我有三列如何使用JOIN从某个列中选择仅具有唯一值的同一个表中的行?
Id Color Price
台苹果和表这个数据
+----+-----------+------+
| Id | Color | Price|
+----+-----------+------+
| 1 | Red | 5 |
| 2 | Red | 1 |
| 3 | Green | 3 |
| 4 | Orange | 4 |
+----+-----------+------+-
在结果表我想看看:
+----+-----------+------+
| Id | Color | Price|
+----+-----------+------+
| 3 | Green | 3 |
| 4 | Orange | 4 |
+----+-----------+------+
如何做到这一点使用连接没有子查询?
在这一点上我有这样的查询只选择红苹果:
select *
from apples as a1
left join apples as a2
on a1.Id != a2.Id
where a1.Color = a2.Color;
但是,我可以做到这一点只能通过加入或不使用具有或子查询? –
你不能在分组时使用* ... –
@MilanŠvec检查工作的小提琴...似乎在mySql上工作...我很确定它没有在T-SQL上,但检查,它在mySql上工作 – Jcl