Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
помогите написать SQL
|
|||
|---|---|---|---|
|
#18+
есть 2 таблицы T1 idval12253146 T2 idid_t1val113211321432535645 Как сделать выборку без повторений с полями id, val по связанным таблицам чтобы поле val выбиралось по минимальному значению. То есть рузультат должен быть id val11213145 Вроде простое решение должно быть, но оно на ум не приходит( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2012, 17:37 |
|
||
|
помогите написать SQL
|
|||
|---|---|---|---|
|
#18+
И еще, в таблице t2 значения id_t1 могут отсутствовать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2012, 17:44 |
|
||
|
помогите написать SQL
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. 2. Так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2012, 17:46 |
|
||
|
помогите написать SQL
|
|||
|---|---|---|---|
|
#18+
londinium, нет, выборку надо сделать по обоим таблицам (значения могут быть либо в одной, либо в другой), то есть 2 таблицы надо объединить и при этом для каждого id выбрать минимальное val ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2012, 17:50 |
|
||
|
помогите написать SQL
|
|||
|---|---|---|---|
|
#18+
Что-то я не понимаю, может, тогда так: Код: sql 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2012, 17:59 |
|
||
|
помогите написать SQL
|
|||
|---|---|---|---|
|
#18+
а как таблицы связаны то ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2012, 18:00 |
|
||
|
помогите написать SQL
|
|||
|---|---|---|---|
|
#18+
Rust(), не проверял, т.к. ddl вы не предоставили ) Код: sql 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2012, 18:43 |
|
||
|
помогите написать SQL
|
|||
|---|---|---|---|
|
#18+
londinium, Поправка: Код: sql 1. 2. 3. 4. 5. 6. Что интересно, при UNION ALL оптимизатор догадывается раскрыть его и проводить группировку на таблицах по отдельности. Как будет быстрее, зависит от реальных данных. Roman OL, Это был бы самый оптимальный вариант, если бы не было условия "значения могут быть либо в одной, либо в другой". А так надо вводить full outer join и оптимизатор начинает чего-то мудрить (вводить дополнительный скан T1 таблицы). Значение при этом нужно было бы выбирать как least (COALESCE(r1.val, t1.val), COALESCE(t1.val, r1.val)), на время выполнения это уже не влияло бы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2012, 19:22 |
|
||
|
|

start [/forum/topic.php?fid=43&msg=37866589&tid=1601804]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
79ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 329ms |
| total: | 506ms |

| 0 / 0 |
