我对SQL还是很陌生,花了数小时进行搜索,但所有文章都差不多相同
SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name = table2.column_name;
下面是我的代码,但老实说,我不确定我在这里做错了什么。
"SELECT * FROM user_private_store WHERE store_type=@STORE_TYPE " +
"RIGHT JOIN user_private_store_items " +
"ON user_private_store.id = user_private_store_items.id";
我想通过ID连接两个表,保持ID从左开始,并从右表获取其他参数user_private_store_items
在关键字“ right”附近我得到了错误的语法
答案 0 :(得分:3)
只需在连接后放置where
子句:
"SELECT * FROM user_private_store s " +
"RIGHT JOIN user_private_store_items i " +
"ON s.id = i.id " +
"WHERE store_type=@STORE_TYPE"
注意:
表别名使查询更易于阅读和理解。我修改了您的查询以使用它们
您需要在store_type
子句中为where
加上所属表,以免产生歧义
select *
版;更好地枚举您要选择的所有列