为了账号安全,请及时绑定邮箱和手机立即绑定
​那最后查个孙悟空,那结果岂不是说四人组中孙悟空不是孙悟空的结拜兄弟,感觉这个举例不太恰当呀
a表1,2,3.
b表2,3,4
全连接结果:
1,null
2,2
3,3
null,4
where 选中带有null的值
1,null
null,4
表a,id为1,2,3
表b,id为2,3,4
想找出不和b表id相等的数据。
(notin方法)
select * from a
where a.id not in (
select id from b
)
(leftjoin方法)
(1)
select * from a
left join b
on a.id=b.id
查出1,null ;2,2;3,3三条数据
上面sql加上where限制,where b.id=null, 就只剩下一条id=1的数据
用plsql学关联查询,这两章看的难受,过段时间再看了,先mark下
plsql正好相反,第一条语句可以执行,第二条报错
最关键的sql语句咋写的不说 你想干啥
UPDATE `取经四人组`
SET ending='齐天大圣' WHERE `取经四人组`.user_name in
(SELECT * FROM(SELECT `取经四人组`.user_name
FROM `取经四人组` INNER JOIN `孙悟空的朋友` ON `取经四人组`.user_name = `孙悟空的朋友`.user_name )as temp)
这课讲的有问题,左右连接实现不对
max 函数 如果数据量大的情况下 可以考虑 在那一列上建立索引
为什么不讲讲sql的意思那?
这个sql分组求top n应该是有问题的,如果一个人在3个不同时间段kill的人相同,比如都kill了一个人,那么就会取不出结果了。
SELECT
t1.id,
t1.NAME,
t2.num,
count( 1 ) cnt
FROM
tbl_goods t1
LEFT JOIN tbl_sale t2 ON t1.id = t2.goods_id
LEFT JOIN tbl_sale t3 ON t2.goods_id = t3.goods_id
WHERE
t2.num <= t3.num
GROUP BY
1,
2,
3
HAVING
cnt <= 2

---------------------------------
join关联查询
前面说找自己问题的,你真是够了,老师前面明确写着is null,后面自己写错了,然后让我们找自己的问题?开玩笑吧
表顺序换了 连接方式也变了 这不是换汤不换药、、、
课程须知
本门教程主要针对的是MySQL数据库,熟悉数据库的CRUD操作是掌握本门教程精华的必要条件。
老师告诉你能学到什么?
1、如何正确的使用join语句 2、如何实现分组选择数据

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消