我想找出选择什么项目,什么没被选中成为0入门选定项目,没有选择
这是列表框(或下拉菜单)是有用的,什么是强调它的意思是它已经加入(LEFT JOIN)
我不能让SQL工作:
SELECT StoreID, ft.id, name, count(1) as Selected
FROM `store_food_type` AS sft
LEFT JOIN food_type AS ft
ON ft.id = sft.food_type_id
WHERE StoreID = 17633
GROUP BY ft.id
UNION
SELECT 0, ft.id, name, 0 as Selected FROM food_type AS ft
编辑:它并没有产生一个错误,它显示的结果,但name
是重复的,我不想
它看起来是这样的:
+------------+------+----------+----------+
| StoreID | id | name | Selected |
+------------+------+----------+----------+
| 17633 | 1 | Indian | 1 |
| 17633 | 8 | American | 1 |
| 0 | 1 | Indian | 0 |
| 0 | 2 | English | 0 |
| 0 | 25 | Kurdish | 0 |
| 0 | 5 | Chinese | 0 |
| 0 | 7 | Turkish | 0 |
| 0 | 8 | American | 0 |
+------------+------+----------+----------+
我想要的结果出现这样的:因为在你查询UNION
的
+------------+------+----------+----------+
| StoreID | id | name | Selected |
+------------+------+----------+----------+
| 17633 | 1 | Indian | 1 |
| 17633 | 8 | American | 1 |
| 0 | 25 | Kurdish | 0 |
| 0 | 5 | Chinese | 0 |
| 0 | 7 | Turkish | 0 |
| 0 | 8 | American | 0 |
+------------+------+----------+----------+
此查询以何种方式失效?它是否产生错误,是否运行没有错误,但不选择行或返回错误的行? – 2012-03-09 16:57:11
@MarkBannister我已经更新了我的问题。 – 2012-03-09 17:07:13
同一家商店可以多次选择食物吗? – Griffin 2012-03-09 17:57:54