Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
15.04.2020, 18:20
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
У меня есть две таблицы:
Пример master id f11 12 2 detail id mater_id f21 1 12 1 13 2 13 2 2 выборка всех записей id f1 f21 1 12 2 -1 условие f2=1 id f1 f21 1 12 2 -1 условие f2=2 id f1 f22 2 -1(здесь первый мастер отфильтровался, а во втором, несмотря на то, мы отфильтровали одну деталь, все равно выводим f2 = -1) Как бы это красивее сделать? Допускается использование процедур, функций... P.S. на записи мастера тоже могут накладываться ограничения С уважением, Vasilisk ... |
|||
:
Нравится:
Не нравится:
|
|||
|
15.04.2020, 18:31
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
Чего это ты начал лабораторные делать?.. _Vasilisk_если для данного мастера у всех деталей поле f2 имеет одинаковое значение, то вернуть это значение Код: sql 1.
_Vasilisk_на выборку может налагаться ограничения на значения поля f2. И если ни одна деталь не имеет такого значения, то и сам мастер не выводится. Код: sql 1.
_Vasilisk_на записи мастера тоже могут накладываться ограничения Код: sql 1.
Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
15.04.2020, 18:52
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
Dimitry Sibiryakov Код: sql 1.
Dimitry Sibiryakov Код: sql 1.
Два раза делать join? Один фильтрованный, второй нет? Деталей всего 5 штук. В каждой до 4 таких агрегируемых полей ... |
|||
:
Нравится:
Не нравится:
|
|||
|
15.04.2020, 19:02
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
_Vasilisk_А нужно искать отличия по всем. Тогда условие в having вместо join. Или derived table. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
15.04.2020, 19:24
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
Dimitry Sibiryakov, и опять таки join мне размножит записи в мастере. Добавлять GROUP BY по всем полям мастера? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
15.04.2020, 19:29
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
Если запрос сложный - то, возможно, лучше один раз написать EB-блок, который будет скрупулёзно проходить и проверять все условия, делать все расчёты и т.д. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
15.04.2020, 20:03
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
_Vasilisk_Добавлять GROUP BY по всем полям мастера? Да. Или оборачивать деталь в ДТ с группировкой и блэкджеком. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
15.04.2020, 22:13
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
Почему банальный встроенный select не? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.04.2020, 17:20
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
Гаджимурадов Рустам EB-блок ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.04.2020, 18:06
|
|||
---|---|---|---|
Выборка с группировкой |
|||
#18+
_Vasilisk_, авторEXECUTE BLOCK? Так а чем он лучше обычной процедуры? EB - выполняется на стороне клиента. И не зачем плодить мульон ХП. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.04.2020, 18:24
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
AltHaspEB - выполняется на стороне клиента. чушь. EB выполняется на сервере конечно. Разница между EB и ХП в том, что EB не хранится на сервере, и что текст EB можно формировать на лету с клиента. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.04.2020, 18:36
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
_Vasilisk_> Так а чем он лучше обычной процедуры? В данном случае его надо сравнивать не с ХП, а с запросом. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.04.2020, 19:33
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
AltHasp И не зачем плодить мульон ХП. Симонов Денис EB можно формировать на лету с клиента. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.04.2020, 19:16
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
Dimitry Sibiryakov Код: sql 1.
Код: sql 1.
? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.04.2020, 08:51
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
case f2 is distinct ? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
24.04.2020, 15:13
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
Гаджимурадов Рустам case f2 is distinct ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
24.04.2020, 15:30
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
На SO советуют так Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
27.04.2020, 12:47
|
|||
---|---|---|---|
Выборка с группировкой |
|||
#18+
_Vasilisk_ А как быть с NULL? Это ты скажи. Оно как отдельное уникальное значение считается или как? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
28.04.2020, 19:23
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
WildSery Оно как отдельное уникальное значение считается или как? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.04.2020, 11:20
|
|||
---|---|---|---|
Выборка с группировкой |
|||
#18+
Здесь 2 запроса будет, а join или вложенный уже по ситуации. Первый с группировкой должен посчитать f2. Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.04.2020, 17:12
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
WildSery Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.04.2020, 17:57
|
|||
---|---|---|---|
Выборка с группировкой |
|||
#18+
_Vasilisk_ Если все значения NULL, то работать не будет Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.04.2020, 19:22
|
|||
---|---|---|---|
|
|||
Выборка с группировкой |
|||
#18+
WildSery Да, действительно. Код: sql 1.
_Vasilisk_ На SO советуют так Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=40&mobile=1&tid=1560365]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
133ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 242ms |
0 / 0 |