首页 > 解决方案 > SQL Server查询以检查日期是否具有相同的数字

问题描述

用于验证日期列是否都是相同数字的 case 语句(即 1s、2s 等)

DECLARE @opendate varchar 
SET opendate = '11111111' 

SELECT 
    CASE 
        WHEN opendate LIKE '^([0-9a-z])\1+$')
            THEN 'invalid' 
    END AS date

标签: sqlsql-server

解决方案


利用

declare @opendate varchar(50)
set @opendate = '11111111111' 
select @opendate, case when patindex('%[^'+left(@opendate,1)+']%',@opendate) = 0 then 'valid' else 'invalid' end

db<>fiddle中的演示


推荐阅读