gpt4 book ai didi

sql - 选择两个表中的所有列(按表 1 中的所有列和表 2 中的特定列分组)

转载 作者:行者123 更新时间:2023-12-03 23:09:50 25 4
gpt4 key购买 nike

我的表结构如下

    TblMemberInfo          |         TblCarInfo
MemberID Name | Id MemberId CarNumber
1 Sandeep | 1 2 1234
2 Vishal | 2 1 1111
3 John | 3 4 2458
4 Kevin | 4 2 1296
5 Devid | 5 4 7878
| 6 3 4859

我需要查询从 TblMemberInfo,TblCarInfo 中选择全部,其中 Count(MemberId)=1

      MemberId    Name        CarNumber
1 Sandeep 1111
3 John 4859

最佳答案

这是一种方法:

select mi.MemberID, mi.Name, min(CarNumber) as CarNumber
from TblMemberInfo mi join
TblCarInfo ci
on mi.MemberID = ci.MemberID
group by mi.MemberID, mi.Name
having count(*) = 1;

这是有效的,因为组中只有一行,min() 返回正确的值。

替代方法使用不存在:

select mi.MemberID, mi.Name, ci.CarNumber
from TblMemberInfo mi join
TblCarInfo ci
on mi.MemberID = ci.MemberID
where not exists (select 1
from TblCarInfo ci2
where ci2.MemberID = ci.MemberID and ci2.id <> ci.id
);

关于sql - 选择两个表中的所有列(按表 1 中的所有列和表 2 中的特定列分组),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37152188/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com