为了账号安全,请及时绑定邮箱和手机立即绑定
查询四人组,打怪最多的两天
select t1.user_id, t1.time, t1.kills
from da_guai t1
where(
select count(*) from da_guai as t2
where t2.user_id = t1.user_id and t2.kills > t1.kills
) < 2
order by t1.user_id;
查询四人组中,打怪最多的日期
select user_id, time, kills
from (
select * from da_guai order by kills desc
) as tmp
group by user_id;
@purple_yao 你再牛B也离开不基础
这是哈啊,mysql基础老师讲的很好
建议老师更多的是解释下SQL为什么这么写,而不是看看有没有效果~
服了 这表结构都没给
推测出建表语句
create table user1(user_name varchar(20),over varchar(20));
create table user2(user_name varchar(20),over varchar(20)
);
insert user1 values('孙悟空','斗战圣佛');
insert user1 values('猪八戒','净坛使者');
insert user1 values('沙僧','金身罗汉');
insert user1 values('唐僧','旃檀功德佛');
insert user2 values('孙悟空','活佛');
感谢老师qq
老师的例子有些离题
不过思想是很好的 这个需要自己把控
很有收获
其实还可以用窗口函数,可是mysql不支持
优化就别用max,这函数效率不行
SELECT
a.use_name,
b.kills,
b.killtime
FROM im_user AS a
INNER JOIN im_kill AS b ON a.id = b.user_id
WHERE b.kills =
(SELECT
kills
FROM im_kill AS c
WHERE c.user_id=b.user_id
ORDER BY kills DESC
LIMIT 1);
应该给出两张表的全部字段,不然也没法练手,总不能光看视频不上手吧.
例子中的分组选择不太严谨,杀怪数排第一或第二的日期如果有两条及以上的数据的情况下,会少查出来数据,所以例子中的语句不太对,但是分组的思想是对的
数据库学起来真的好无聊!很耐心的看完了4分钟。。。虽然学了点东西,但是好困
课程须知
本门教程主要针对的是MySQL数据库,熟悉数据库的CRUD操作是掌握本门教程精华的必要条件。
老师告诉你能学到什么?
1、如何正确的使用join语句 2、如何实现分组选择数据

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消