其他列sql中的搜索列

时间:2014-02-19 09:07:19

标签: mysql sql sql-server

我有以下查询:

SELECT 
    Table1 . *
FROM
    Table1
        inner JOIN
    Table2 ON Table1.Column1 = Table2.Column2

我想更改查询,不仅要查找Table1.Column1Table2.Column2之间的macth,还要查找Table1.Column1Table2.Column2内的字符串的所有数据。

我需要做什么?

4 个答案:

答案 0 :(得分:2)

这样的东西
SELECT 
    Table1 . *
FROM
    Table1
        inner JOIN
    Table2 ON Table1.Column1 LIKE CONCAT('%',Table2.Column2,'%')

答案 1 :(得分:2)

如果是SQL SERVER,请使用CHARINDEX

SELECT 
Table1 . *
FROM
Table1
    inner JOIN
Table2 ON CHARINDEX(Table1.Column1, Table2.Column2) > 0

答案 2 :(得分:0)

ON子句更改为

SqlServer的

ON Table2.Column2 LIKE '%'+Table1.Column1+'%'

的MySQL

ON Table2.Column2 LIKE CONCAT('%',Table1.Column1,'%') 

答案 3 :(得分:0)

试试这个

SELECT 
    Table1.*
FROM
    Table1
        inner JOIN
    Table2 ON T Table2.Column2 Like '%' + Table1.Column1 + '%'