sql实现两列数据的匹配

来源:百度知道 编辑:UC知道 时间:2024/05/30 23:20:41
两列数据(文字),查询第一列数据中的每个单元是否包含在第二列中,sql语句如何实现。多谢
要查询第二列单元中是否包含第一列单元中的文字,是包含,不是相等。比如第一列一单元为"电脑",第二列有一单元是“我的电脑”。查询这样匹配,不是完全相等,而是包含。

设表名为TABLENAME,列1为COL1,列2为COL2则这样求出所有第一列在第二列中存在的记录:
SELECT * FROM TABLENAME A WHERE COL1 IN(SELECT COL2 FROM TABLENAME)
===============================
SELECT * FROM TABLENAME A
WHERE EXISTS(SELECT 1 FROM TABLENAME B WHERE B.COL2 LIKE '%'+A.COL1+'%')

=========================
SELECT DISTINCT A.* FROM TABLENAME A,TABLENAME B WHERE B.COL2 LIKE '%'+A.COL1+'%'