gpt4 book ai didi

mysql - 如何检测 MySQL 查询中的非连续数字列?

转载 作者:行者123 更新时间:2023-11-29 13:09:51 25 4
gpt4 key购买 nike

我可以在脚本中做到这一点,但我知道这在 MySQL 中一定很容易实现。你知道银行对账单上如何在号码乱序的支票旁边加上一个小星号吗?这正是我想要做的。

假设一个表具有通常的 id pkey,但也有一个 checkno 整数。我想返回三列:checknoidoutoforder,它们要么是空白字符串,要么是星号:

SELECT t1.checkno, t1.id, outoforder '' FROM table t1 ORDER BY t1.checkno

我该如何修改这个 SQL 来做到这一点?我正在考虑像 (SELECT t2.id FROM table t2 WHERE t2.checkno = t1.checkno - 1) 这样的子查询,但上面抛出了一些 MySQL 函数。顺便说一句,我在实际表上尝试了这种类型的子查询,但查询永远不会返回。

最佳答案

也许可以使用这样的变量?

SELECT t1.checkno,t1.id,
IF(@lastCheckNo IS NULL OR @lastCheckNo = t1.checkno - 1,'','*') as outoforder,
@lastCheckNo := t1.checkno
FROM (SELECT * FROM `table` ORDER BY checkno) t1,(SELECT @lastCheckNo := NULL)variable

sqlFiddle

关于mysql - 如何检测 MySQL 查询中的非连续数字列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22236508/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com