有这样一个表:
id key
1 a
1 b
1 c
1 d
2 a
2 b
2 c
3 a
3 b
3 d
4 a
4 c
4 d
5 d
5 b
5 c
6 a
6 d
6 c表的数据量较大,有百万级。现在想实现的效果是:通过语句查询所有没有出现key=d的id值(要求得到的id值不重复,如本例结果应为只有一行,即:id为2时没有出现d)。请问,这样的结果可以用一条语句实现吗?要求不能使用IN语句,那样我的服务器就惨了。
id key
1 a
1 b
1 c
1 d
2 a
2 b
2 c
3 a
3 b
3 d
4 a
4 c
4 d
5 d
5 b
5 c
6 a
6 d
6 c表的数据量较大,有百万级。现在想实现的效果是:通过语句查询所有没有出现key=d的id值(要求得到的id值不重复,如本例结果应为只有一行,即:id为2时没有出现d)。请问,这样的结果可以用一条语句实现吗?要求不能使用IN语句,那样我的服务器就惨了。
解决方案 »
- java.sql.SQLException: Table 'xxx' is marked as crashed and should be ...
- 散分,并如何判断时间段上有重叠冲突。
- 请教...MySQL数据库中存放中文就都是乱码!
- ASP连接MYSQL编码问题
- mysql中得表记录导出sql格式得时候,中文会变成乱码?
- 系统服务程序不能连接mysql
- linux下用c api调用mysql的编译命令
- 请教如何打开innodb这种表类型
- mysql存储如何迁移到裸设备
- mysql-5.7.26-winx64下载和安装教程
- 急!mysql 如何导出数据库
- SET GLOBAL log_bin_trust_function_creators = 1 如何在my.cnf里面配置?
select id from tt group by id) a
left join
(select id from tt where key=d group by id) b
on a.id=b.id where b.id is null