У меня есть 3 таблицы: один называется «документы» один называется «метки» и один называется «documents_tags»Inner Регистрация подвыбор в отдельной колонке
В таблице «document_tags» У меня есть 3 колонки: ID, document_id, tag_id , что означает, что через эту таблицу теги muliple могут быть связаны с несколькими документами.
Теперь я хочу потушить все наборы табличных «тегов» и в каждой строке результатов я хочу иметь «1», если тег связан с документом ID «3» (в таблице document_tags) и a "0", если нет.
Возможно ли это в одном запросе?
Да, вы можете сделать это с 'LEFT OUTER JOIN'. Если совпадающая строка не найдена, столбцы в таблице 'document' будут' NULL'. Вы можете использовать 'IF (document.id IS NULL," 0 "," 1 ")' для нужного столбца. – Barmar
Извините, я новичок и не смогу найти решение ;-( –
Можете ли вы дать мне еще один совет. Как написано, я хочу сгенерировать следующий запрос: SELECT ID, title, (Выбрать * from documents_tags WHERE document_id = 3 и tag_id = [тег соответствующей строки результата] в качестве привязанных тегов FROM ... Где поместить левое внешнее соединение и как я могу ссылаться на то, что я написал как «[тег соответствующей строки результата]»? Извините, мой английский не так хорошо ... –