我需要识别列中的重复数字(例如:1111、33333333、5555555555、777777777 等)。
我如何在 sql server 中执行此操作而不必对每个场景进行硬编码。列的最大长度为 10。任何帮助表示赞赏。
最佳答案
这将检查列中是否包含所有相同的值。
SELECT *
FROM tablename
WHERE columnname = REPLICATE(LEFT(columnname,1),LEN(columnname))
正如 Nicholas Cary 指出的那样,如果该列是数字,您需要先转换为 varchar:
SELECT *
FROM tablename
WHERE CAST(columnname AS VARCHAR(10)) = REPLICATE(LEFT(CAST(columnname AS VARCHAR(10)),1),LEN(CAST(columnname AS VARCHAR(10))))
关于sql - 如何在 SQL Server 的列中查找重复数字。例如11111、33333333、5555555555、7777777等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24686041/