Group By 和LEFT JOIN的问题

strikebone 2006-04-27 07:15:34
我有两个表

表一:
id Name
1 aa
2 bb

表二:
id Attr
1 aa-1
1 aa-2

我想要的结果是
id Name Attr
1 aa aa-1
2 bb null

即如果表二有的,就列出来一个,如果没有,就为空

我这样写SQL语句,但是不对.请高手看看.

SELECT 表1.id, 表1.Name,表2.Attr
FROM 表1 LEFT OUTER JOIN 表2
ON 表1.id = 表2.id
GROUP BY 表1.id

怎么不对啊.
...全文
259 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhaoanle 2006-04-27
  • 打赏
  • 举报
回复
因为表1.Name,表2.Attr ,不在 group by 后

改成这样
select a.id,a.name,attr=(select top 1 attr from 表2 where id=a.id ) from 表1 a

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧