关键字“ right”附近的语法不正确

时间:2019-11-06 20:17:33

标签: sql

我对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”附近我得到了错误的语法

1 个答案:

答案 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 *版;更好地枚举您要选择的所有列