有什么方法可以测试字符串是否包含DATE(如31.12.2018)?
喜欢
SELECT date_string FROM table where date_string LIKE '%.*.*%'
还是类似的东西?
答案 0 :(得分:2)
您可以尝试使用SIMILAR TO
比较谓词,该谓词使用SQL正则表达式。但是,根据文本的大小,这可能不是很有效。
以下谓词将起作用:
date_string similar to '%[[:DIGIT:]]{2}.[[:DIGIT:]]{2}.[[:DIGIT:]]{4}%'
有关语法的详细信息,请参见SIMILAR TO
上的语言参考。
如果您需要在查询上应用查询逻辑,而不是依赖于解析文本列中的内容,则可能需要重新考虑设计并在实际的SQL DATE
中使用显式列。