求一个Sql语句关于多表连接的问题!!

lutaotony 2009-08-12 02:31:08
用户表users
user_id(用户id) login_name(用户名)
1 aaa
2 bbb
3 ccc
销售表sales
log_id(日志) buy_user_id(购买用户) sale_user_id(出售用户)
1 1 0(表示系统)
2 2 1
3 3 1
4 2 0

想通过login_name="系统"查出来的效果是这样的
日志 购买用户 出售用户
1 aaa 系统
2 bbb 系统
我自己写的但是有问题,请教!!!
select a.log_id ,b.login_name,c.login_name from sales a
join users b on a.buy_user_id = b.user_id left join a.sale_user_id =c.user_id and c.login_name="系统"
...全文
64 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
华夏小卒 2009-08-12
  • 打赏
  • 举报
回复

select log_id as 日志,login_name as 购买用户,[出售用户]='系统'
from [users] a ,sales b
on buy_user_id=user_id
where sale_user_id=0
青锋-SS 2009-08-12
  • 打赏
  • 举报
回复
select log_id as 日志,login_name as 购买用户,case sale_user_id when 0 then '系统' else '' end as 出售用户
from users u,sales s
where s.buy_user_id=u.user_id
where sale_user_id=0
guguda2008 2009-08-12
  • 打赏
  • 举报
回复
SELECT BUY_USER_ID,login_name,'系统 '
FROM SALES,USERS
WHERE SALES.BUY_USER_ID=USERS.USER_ID AND sale_user_id=0
-狙击手- 2009-08-12
  • 打赏
  • 举报
回复
select a.log_id ,b.login_name,isnull(c.login_name ,'系统 ')
from sales a
join users b on a.buy_user_id = b.user_id
left join users c on a.sale_user_id =c.user_id and
where a.sale_user_id = 0

34,588

社区成员

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

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