表A和表B,A有id、time、userid,B有userid username, 现在需要查出A表中与张三相关的数据
A表idtimeuserid112:001212:012312:301B表useridusername1张三2李四想要的结果是:usernameA.idtimeuseri...
A表id time userid
1 12:00 1
2 12:01 2
3 12:30 1
B表 userid username
1 张三
2 李四
想要的结果是:
username A.id time userid
张三 1 12:00 1
张三 3 12:30 1
实现的sql语句是? 展开
1 12:00 1
2 12:01 2
3 12:30 1
B表 userid username
1 张三
2 李四
想要的结果是:
username A.id time userid
张三 1 12:00 1
张三 3 12:30 1
实现的sql语句是? 展开
1个回答
展开全部
select b.username,a.id,a.time,a.userid from A a, B b where a.userid = b.userid
追问
老实说不是完全回答了我的问题,因为我有个条件是张三,
应该加上
and a.userid = (select b.userid from where b.name='张三')
另外from A a , B b
这里为什么要用别名?
再另外如果我只有a表,那么我select * from a ,但是我希望能多出来一列内容都是张三,该怎么实现呢?
追答
-- 可以不加别名(顾名思义,就是代称,方便在多表关联查询使用)
select b.username,a.id,a.time,a.userid from A a, B b where a.userid = b.userid and b.username = '张三'
-- 若用一张表的话,你首先必须 知道是哪一个主键或者标识字段来过滤查询
-- 下面还是用到你两张表
如 select ‘张三’,id,time from A where userid = (select userid from where name='张三')
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询