如何通过从另一个表传递列来使用类似条件的select语句?
我的查询
SELECT count(1)
FROM COMPANYNAME_RESTRICT_LIST a,itaukei_data_store_key b
WHERE
b.surname LIKE a.company_name% OR
b.surname LIKE %a.company_name% OR
b.surname LIKE %a.company_name% OR
b.surname LIKE a.company_name%;
答案 0 :(得分:0)
连接:+'%'
SELECT
count(1)
FROM
COMPANYNAME_RESTRICT_LIST a,
itaukei_data_store_key b
WHERE
b.surname LIKE '%'+a.company_name+'%'
答案 1 :(得分:0)
标准SQL函数是concat()
:
SELECT count(1)
FROM COMPANYNAME_RESTRICT_LIST a join
itaukei_data_store_key b
on b.surname like concat('%', a.company_name, '%')
并非所有数据库都支持concat()
。因此,以下之一通常也会起作用:
on b.surname like '%' || a.company_name || '%'
on b.surname like '%' + a.company_name + '%'
on b.surname like '%' & a.company_name & '%'
答案 2 :(得分:0)
这很好。
SELECT *
FROM COMPANYNAME_RESTRICT_LIST a,itaukei_data_store_key b
WHERE b.surname LIKE '%'||a.company_name||'%' or
b.surname LIKE '%'||a.company_name or
b.surname LIKE a.company_name||'%' or
b.surname LIKE a.company_name;