SELECT *FROM TABLE_CUST WHERE datediff(year,cast(substring(@证件号码,7,4)+'-'+SUBSTRING(@证件号码,11,2)+'-'+SUBSTRING(@证件号码,13,2) as datetime),GETDATE()) >=18 AND LEN(证件号码)=18
改改:SELECT *FROM TABLE_CUST WHERE datediff(year,cast(substring(证件号码,7,4)+'-'+SUBSTRING(证件号码,11,2)+'-'+SUBSTRING(证件号码,13,2) as datetime),GETDATE()) >=18 AND LEN(证件号码)=18
select * from (SELECT * FROM TABLE_CUST WHERE LEN(证件号码)=18 and isdate(substring(证件号码,7,8))=1) t where datediff(yy,cast(substring(证件号码,7,8) as datetime),getdate())>=18
select *
from
(SELECT *
FROM TABLE_CUST
WHERE LEN(证件号码)=18 and isdate(substring(证件号码,7,8))=1) t
where datediff(yy,cast(substring(证件号码,7,8) as datetime),getdate())>=18