阅读量:3
可以使用以下SQL语句来查询序号中未出现的数据:
SELECT missing_numbers.number
FROM (
SELECT ones.number + tens.number * 10 + hundreds.number * 100 AS number
FROM (SELECT 0 AS number UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) AS ones
CROSS JOIN (SELECT 0 AS number UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) AS tens
CROSS JOIN (SELECT 0 AS number UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) AS hundreds
) AS missing_numbers
LEFT JOIN your_table ON missing_numbers.number = your_table.id
WHERE your_table.id IS NULL
ORDER BY missing_numbers.number;
在这个SQL语句中,我们首先生成一个包含所有可能序号的临时表missing_numbers,然后左连接your_table表,通过判断your_table.id是否为NULL来确定序号中是否未出现的数据。最后按照序号进行排序输出。
以上就是关于“mysql怎么查询序号中未出现的数据”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm