
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
02.12.2014, 09:54:44
|
|||
|---|---|---|---|
|
|||
Выбрать и исключить |
|||
|
#18+
Есть таблица вида: авторid-------sender-------owner и вторая авторid-------person_id-------ignored_id 1---------------1-----------------3 2---------------1-----------------5 Нужно выбрать записи из первой по значению owner , при этом owner==person_id , а sender==ignored_id и исключить записи, где встречаются ignored_id Такое можно сделать в одном запросе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.12.2014, 10:01:26
|
|||
|---|---|---|---|
|
|||
Выбрать и исключить |
|||
|
#18+
т.о. если первая таблица будет иметь значения авторid-------sender-------owner 1----------3---------------1 2----------2---------------1 3----------7---------------1 4----------5---------------1 5----------6---------------1 то нужно исключить строки где sender=3 и 5, т.е. результат авторid-------sender-------owner 2----------2---------------1 3----------7---------------1 5----------6---------------1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.12.2014, 11:08:07
|
|||
|---|---|---|---|
Выбрать и исключить |
|||
|
#18+
Понятнее не стало. Такое впечатление, что Вы сами плохо понимаете, что нужно - и именно это мешает Вам составить запрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.12.2014, 11:58:28
|
|||
|---|---|---|---|
|
|||
Выбрать и исключить |
|||
|
#18+
Хм, попробую так... В первой таблице указаны отправитель-получатель. Во второй, для любого получателя указаны те отправители, которых он игнорит, т.е. person_id-ignored_id (т.е. person_id==owner). Нужно получить записи по определенному owner из первой. Теперь нужно исключить из полученного те записи, которых наш owner игнорит - так понятнее? Т.е. можно так: получаем все записи по owner из первой, и получаем список значений из второй таблицы значения которых не должны встречаться в первой. Теперь проходим по первому результату и исключаем те записи в которых ignored_id==sender. Но это два запроса и потом еще проход в программе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.12.2014, 12:03:41
|
|||
|---|---|---|---|
Выбрать и исключить |
|||
|
#18+
rema174, ну и что тут сложного, обычный антиджойн. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=47&tablet=1&tid=1833860]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
22ms |
get tp. blocked users: |
1ms |
| others: | 191ms |
| total: | 296ms |

| 0 / 0 |
