SQl如何检查列记录是否包含anothor列记录的一部分

时间:2018-03-16 12:51:03

标签: sql oracle

我有一个请求,我需要检查列cost_code的所有记录是否包含由列invoices记录组成的字符串 和一个类型编号的字符。

我该如何完成这项任务?

我尝试了这个查询:

SELECT * FROM Deal WHERE cost_code LIKE ('invoice%');  

2 个答案:

答案 0 :(得分:1)

您可以使用正则表达式:

where not regexp_like(cost_code, '^invoice[0-9]$')

答案 1 :(得分:0)

CONCAT()可与LIKE

一起使用
SELECT * FROM Deal WHERE cost_code LIKE CONCAT(invoices, '%');

如果cost_codeABCD1234& invoices1234,然后您可以将查询用作:

SELECT * FROM Deal WHERE cost_code LIKE 
CONCAT( SUBSTRING( invoices, 5, length(invoices) -4), '%');