2015-02-01 1 views
-2

У меня есть этот SQL запрос для поиска:Использование SQL LIKE с другим запросом

select * 
from songs 
where name LIKE '%search%' 
    or author LIKE '%search%' 
    or tags LIKE '%search%'; 

На данный момент все в порядке, но теперь мне нужно искать только в песнях, где в столбце «статус» = 1. Как я могу это сделать?

+0

не большое «исследование усилий» ... – Vland

+0

Я хотел бы улучшить его. Любое предложение? – agustinnriquelme

+0

Да, в следующий раз попробуйте использовать Google перед тем, как задать вопрос. например. выполните поиск по критерию "sql multiple search". также не забудьте принять правильный ответ – Vland

ответ

2

Добавьте его в ИНЕКЕ и положить ПРС в фигурных скобках:

select * from songs where status = 1 and (name LIKE '%search%' or author LIKE '%search%' or tags LIKE '%search%'); 
2

Вы можете использовать круглые скобки, чтобы объединить условия и иметь «и» в конце, так что любой из текущих условий истинны, и состояние, которое вы собираетесь добавить:

select * 
from songs 
where 
    (name LIKE '%search%' or 
    author LIKE '%search%' or 
    tags LIKE '%search%' 
) and 
    status=1; 
+0

Зачем добавлять такой же ответ? .... –

+1

@JuanRuizdeCastilla Марк и я ответили в течение 4 секунд друг от друга. Это очень мало времени, что даже не появился «другой ответ был опубликован». Я не удалял свой ответ, потому что считаю, что у него есть немного больше информации, чем ответ Марка PM. – Sumurai8

+0

ps: Жан проверить время ответа в следующий раз ... – Vland