Popa
Popa

Reputation: 283

search column in other column sql

I have the following query:

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

I want to change the query to find NOT only a macth between Table1.Column1 to Table2.Column2 but to find all data where Table1.Column1 is a string inside Table2.Column2.

What I need to do?

Upvotes: 0

Views: 72

Answers (4)

Abhishek Chaudhary
Abhishek Chaudhary

Reputation: 807

If it's SQL SERVER, use CHARINDEX

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

Upvotes: 2

Vignesh Kumar A
Vignesh Kumar A

Reputation: 28403

Try this

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

Upvotes: 0

Adriaan Stander
Adriaan Stander

Reputation: 166396

How about something like

SELECT 
    Table1 . *
FROM
    Table1
        inner JOIN
    Table2 ON Table1.Column1 LIKE CONCAT('%',Table2.Column2,'%')

Upvotes: 2

OGHaza
OGHaza

Reputation: 4795

Change the ON clause to

SqlServer

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

MySQL

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

Upvotes: 0

Related Questions