2016-08-25 3 views
0

Как написать SQL-запрос с колонкой таблицы?Как написать SQL-запрос с колонкой таблицы?

У меня есть две таблицы table1 и table2.

Table1 has Notes 
Table2 has billid 

У нас есть около 100 законопроектов, которые удовлетворяют как условие.

Прямо сейчас, я пишу со статическим значением в столбце.

Как написать «Like Query», пройдя столбцы в состоянии Like.

select * from table1 
where Notes like select billid from table2 
+0

Немного неясно. Не могли бы вы добавить примеры данных и желаемый результат? – Javier

+1

Покажите правильный образец данных и ожидаемый результат, пожалуйста, – scaisEdge

+0

Является ли столбец 1 теми же значениями, что и Billid – scsimon

ответ

3

Вы хотите JOIN здесь.

Если точная BillID находится в Table1.Column1 то:

select table1.* 
from table1 
    INNER JOIN table2 ON 
     table1.column1=table2.billid 

Вы также можете сделать в ИНЕКЕ это с помощью IN, если вы действительно не нужны никакие записи из table2 в наборе результатов:

select * 
from table1 
where column1 in (SELECT billid FROM table2); 

Это довольно близко к тому, к чему вы стремились в своем запрошенном запросе.

Наконец, если вы на самом деле означает LIKE, который больше матча группового символа в терминах SQL, где column1 просто должен содержать billid затем обратно к присоединиться:

select table1.* 
from table1 
    INNER JOIN table2 ON 
     table1.column1 LIKE '%' + table2.billid + '%' 
+0

Большое спасибо @jnevill. оно работает – goofyui

0

Попробуйте это. Выберите сырье из таблицы 1, если существует какое-либо соответствие из таблицы2

select * 
from table1 
where exists (select billid 
       from table2 
       where table1.column1 LIKE '%' + table2.billid + '%') 
Смежные вопросы