|
|
|
Выборка значений из одной таблицы по отсутсвию записей во второй.
|
|||
|---|---|---|---|
|
#18+
К сожалению, не смог придумать более корреткной формулировки, которая входила бы в поле Темы. Описание проблемы: Существуют две таблицы A и B, в первой хранятся объекты, а во второй состояния объектов, рпи это у одного объекта может быть несоклько состояний. Например ID OBJECT1 Объект12 Объект23 Объект34 Объект4 ID OBJECT_ID CONDITION11Состояние121Состояние231Состояние342Состояние252Состояние363Состояние274Состояние3 Набор состояний в которых может находится объект задан заранее и ограничен (всего существует порядка 5 различных состояний). Как сделать выборку объектов по состояниям в которых он должен находится, при улсовии что он не должен находится более ни в каких других состояниях? Т.е. если я хочу выбрать объекты с Состоянием2, то получу Объект3, но не Объект2, так как он находится так же и в Состоянии3. Если я хочу получить объекты в Состояниях 2 и 3, то получу Объект2, Объект3 и Объект4, но не Объект1, так как у него существует Состояние1. Какой наиболее оптимальный запрос здесь можно использовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2013, 13:14:50 |
|
||
|
Выборка значений из одной таблицы по отсутсвию записей во второй.
|
|||
|---|---|---|---|
|
#18+
not exists тебе в помощь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2013, 13:25:42 |
|
||
|
Выборка значений из одной таблицы по отсутсвию записей во второй.
|
|||
|---|---|---|---|
|
#18+
Спасибо, это действительно то, что мне нужно было. Хотя через DBIx::SearchBuilder это будет реализовать несколько геморно, так что если появятся еще враианты, буду благодарен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2013, 14:32:17 |
|
||
|
Выборка значений из одной таблицы по отсутсвию записей во второй.
|
|||
|---|---|---|---|
|
#18+
См. FAQ по выбору первого/последнего в группе. Тебе собсно и надо последнее состояние (видимо, при сортировке по B.ID). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2013, 14:41:34 |
|
||
|
Выборка значений из одной таблицы по отсутсвию записей во второй.
|
|||
|---|---|---|---|
|
#18+
К сожалению, по существованию одного состояния я не могу определить существование/не существование других, иначе все было бы несколько проще ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2013, 14:52:24 |
|
||
|
Выборка значений из одной таблицы по отсутсвию записей во второй.
|
|||
|---|---|---|---|
|
#18+
т.е. порядок не при делах, просто наличие? ну вот какой-нить такой бред... Код: sql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2013, 15:09:42 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=38391035&tid=1836086]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
47ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 197ms |
| total: | 325ms |

| 0 / 0 |
