Вот изображение, прикрепленное для мини-блога, который я проектирую для небольшого сайта. Я хотел бы сделать инструкцию SQL Select, где я получаю идентификатор блога для блогов, где находится его status = '1'
и его categories LIKE '%blog%'
. Как сделать один SQL-вызов, где я получаю все активные блоги, у которых есть «блог» в своей категории?SQL select на основе нескольких значений строк
ответ
Вот один метод:
select b.blog_id
from blogs b
where (b.field = 'status' and b.data = '1') or
(b.field = 'categories' and b.data LIKE '%blog%')
group by b.blog_id
having count(*) = 2;
Это предполагает, что "статус" и "категории" появляются только один раз. В противном случае вам необходимо:
having count(distinct field) = 2
'status' и' categories' будут отображаться только один раз для каждого 'blog_id'. – Dimser
Это большое спасибо .. Если Мне нужно подсчитать количество блогов, где указаны эти учетные данные - могу ли я просто изменить «select b.blog_id from» на 'select count (*) from'? – Dimser
@ Dimser. , , Нет. Вам нужно будет включить это как подзапрос, чтобы подсчитывать строки. –
- 1. SQL: Возвращаемое значение столбца на основе предыдущих нескольких строк значений
- 2. Копирование строк на основе значений нескольких ячеек
- 3. SQL sum output на основе нескольких значений
- 4. Фильтровать данные на основе нескольких строк SQL
- 5. нескольких строк SQL Select Query
- 6. Изменения значений нескольких строк SQL
- 7. SQL UPDATE на основе значений других строк
- 8. SQL Вставка нескольких строк на основе переменных
- 9. SQL Обновление нескольких строк на основе ID
- 10. База данных Выбор нескольких строк на основе нескольких значений
- 11. SQL Server: удаление нескольких строк на основе результата результата
- 12. Обновление нескольких строк на основе других значений столбцов таблицы
- 13. Удаление строк на основе нескольких значений в другой таблице
- 14. Обновление строк на основе состояния нескольких столбцов
- 15. Выбор строки на основе значений из нескольких строк
- 16. Разбиение строк на основе нескольких правил и значений
- 17. SQL Server 2012 SELECT max date на основе нескольких условий
- 18. Удаление нескольких строк на основе номеров строк
- 19. SELECT один из нескольких строк на основе переменной
- 20. Ограничение на основе значений столбца (не # строк)
- 21. SQL Server 2008: фильтрация повторяющихся строк на основе нескольких столбцов
- 22. SELECT DISTINCT на основе нескольких столбцов
- 23. Oracle SQL: выбор на основе значений в столбцах предыдущих строк
- 24. SQL SELECT на основе идентификатора
- 25. SQL: SELECT различных парных значений на основе наибольшего количества вхождений
- 26. счетчик в выражении SQL SELECT на основе значений текущей строки
- 27. PHP Запрос на основе значений «select»
- 28. Oracle APEX 5.0 - SQL-запрос на основе (нескольких) значений флажка
- 29. Split ряд на несколько строк на основе значений столбца SQL
- 30. Обновление нескольких строк с набором значений sql
Вы что-то пробовали? Это похоже на довольно простой запрос. – Epodax
Я попытался выбрать все блоги, которые в настоящее время активны, а затем послесловия я делаю инструкцию select, например. 'WHERE blog_id =: id AND field = 'categories' И данные LIKE '% blog%'' .. – Dimser