|
Как сделать строгую выборку по списку значений?
|
|||
---|---|---|---|
#18+
Уважаемое сообщество, у кого есть свободная минутка, просьба мочь разобраться. Чтоб был более понятен мой вопрос, коротко опишу ситуацию. Есть две таблицы, у каждой две колонки: • books (id, name) • books_attribute (book_id, book_attributes_id) В таблице books_attribute оба поля это внешние ключи. Идея в том, что у одной книги может быть несколько атрибутов. Вот пример таблиц: books Код: plaintext 1. 2. 3. 4. 5. 6.
book_attributes Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
Теперь вопрос . Как получить определенные book_id, если передаю список значений (айдишников) для book_attributes_id? Чтоб еще точней.. Если я передаю, например, в where, такие значения book_attributes_id: 2, 3 То должен получить только : 47, 48. 2, 1, 10, 3 = 48 1, 7 = 47, 50 Мое гугленье не дало результатов, или я не правильно искал. Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
24.06.2020, 20:58 |
|
Как сделать строгую выборку по списку значений?
|
|||
---|---|---|---|
#18+
resourceful Если я передаю, например, в where, такие значения book_attributes_id: 2, 3 То должен получить только : 47, 48. Код: sql 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
24.06.2020, 22:29 |
|
Как сделать строгую выборку по списку значений?
|
|||
---|---|---|---|
#18+
resourceful Чтоб еще точней.. Если я передаю, например, в where, такие значения book_attributes_id: 2, 3 То должен получить только : 47, 48. 2, 1, 10, 3 = 48 1, 7 = 47, 50 Для атрибутов 1, 7 -> book_id = 47, 48, 49, 50. (ваш ответ 47, 50) У вас ошибка или я не осознал задачу. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2020, 02:44 |
|
Как сделать строгую выборку по списку значений?
|
|||
---|---|---|---|
#18+
Gluck99, авторДля атрибутов 2, 3 -> book_id = 47, 48, 49. (ваш ответ 47, 48) Для атрибутов 1, 7 -> book_id = 47, 48, 49, 50. (ваш ответ 47, 50) У вас ошибка или я не осознал задачу. Задача в том, чтоб получить книги, у которых есть все указанные атрибуты, то есть и 2, и 3. Так как у 50-й книги нет атрибута 3, то она не подходит под параметры поиска. Например.. атрибут 2 = мягкий переплет атрибут 3 = с иллюстрациями Если я в фильтре запроса указываю, что мне нужно показать только книги, у которых есть "мягкий переплет" И "с иллюстрациями", то мне не должно показывать книги, у которых есть только "мягкий переплет", а иллюстраций нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2020, 11:32 |
|
Как сделать строгую выборку по списку значений?
|
|||
---|---|---|---|
#18+
resourceful Задача в том, чтоб получить книги, у которых есть все указанные атрибуты, то есть и 2, и 3. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2020, 11:33 |
|
Как сделать строгую выборку по списку значений?
|
|||
---|---|---|---|
#18+
Akina, Большое спасибо за помощь! Если вам не сложно, подскажите еще, как сделать грамотный запрос, чтоб при таком обращении к таблице book_attributes, получить данные из таблицы books. Как я понимаю здесь надо работать с join. Но sql не моя сильная сторона, а потому не хотелось бы создавать велосипед. Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2020, 14:11 |
|
|
start [/forum/topic.php?fid=47&fpage=19&tid=1828500]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
48ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 163ms |
0 / 0 |