我有一行用于SQL Server的代码,它采用的日期列为“ YYYYMMDD”,其中DD为00,并将00转换为01,以便它与datetime一起使用。我希望能够使用MySQL
当前适用于SQL Server的代码:
INSERT patentdb.Citation(PatentNo, Citation, CitedBy, CitationDate) SELECT PatentNo, citation, WhoCitedThis, dt FROM ( SELECT PatentNo, Citation, WhoCitedThis, dt = CASE WHEN CitationDate LIKE '%00' THEN INSERT (CitationDate, 8, 1, '1') ELSE CitationDate END FROM patentdb.CitationSource ) AS x WHERE ISDATE(dt) = 1;
但是isdate在MySQL中无效,该怎么解决?
您可以尝试使用STR_TO_DATE函数。null如果表达式不是日期,时间或日期时间,则返回。
null
WHERE STR_TO_DATE(dt, '%d,%m,%Y') IS NOT NULL