我的表结构如下所示
id user_name item brand
1 A car ferrari
2 A bike suzuki
3 B car ferrari
4 B bike yamaha
在这里,我想为具有汽车法拉利和自行车铃木的user_name编写一个选择查询。请帮我写一下sql Query
答案 0 :(得分:2)
这应该可以解决问题:
SELECT T1.user_name
FROM MyTable T1
LEFT JOIN MyTable T2 ON T1.id = T2.id AND T2.item = 'bike' AND T2.brand = 'suzuki'
WHERE T1.item = 'car' AND T1.brand = 'ferrari'
但是,您应该考虑改进数据库架构(在另一个表中存储vehicles
,并且可能有一个关系表users_vehicles
)