|
|
|
Как правильно написать запрос
|
|||
|---|---|---|---|
|
#18+
Есть 2 таблицы Т1 и Т2, которые связаны по некоторому полю. Причем в Т2 в несколько раз больше записей, чем в Т1. Также в каждой таблице есть поле Дата создания записи. Нужно вывести все поля из Т1 и отсортировать их так: если в связной таблице Т2 нет записей, то для сортировки используем дату создания из Т1, иначе максимальную дату создания из Т2. Запрос написать не проблема, но вопрос как это сделать наиболее эффективно? Пока вижу только варианты либо с подчиненным запросом к Т2, либо с группировкой по всем полям из Т1. Не то, не другое не видится эффективным, с учетом, того, что записей в таблицах очень много. Что-то мне подсказывает, что у такой простой задачи должно быть более эффективное решение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2016, 21:19 |
|
||
|
Как правильно написать запрос
|
|||
|---|---|---|---|
|
#18+
q16393Есть 2 таблицы Т1 и Т2, которые связаны по некоторому полю. Причем в Т2 в несколько раз больше записей, чем в Т1. Также в каждой таблице есть поле Дата создания записи. Нужно вывести все поля из Т1 и отсортировать их так: если в связной таблице Т2 нет записей, то для сортировки используем дату создания из Т1, иначе максимальную дату создания из Т2. Запрос написать не проблема, но вопрос как это сделать наиболее эффективно? Пока вижу только варианты либо с подчиненным запросом к Т2, либо с группировкой по всем полям из Т1. Не то, не другое не видится эффективным, с учетом, того, что записей в таблицах очень много. Что-то мне подсказывает, что у такой простой задачи должно быть более эффективное решение. ...DESC таблиц... сколько в них записей, EXPLAIN... ...наблюдаемая скорость...желаемая скорость ...надо ФАК сделать....про как задавать вопросы... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2016, 00:18 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39198409&tid=1832027]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
151ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
23ms |
get tp. blocked users: |
1ms |
| others: | 197ms |
| total: | 397ms |

| 0 / 0 |
