Можно ли сделать так, чтобы в SELECT параметр DISTINCT относился только к одному из выводимых полей?GROUP BY пробовал, работает намного медленнее.
>Можно ли сделать так, чтобы в SELECT параметр DISTINCT относился только к
>одному из выводимых полей?
>
>GROUP BY пробовал, работает намного медленнее.в pgsql работает select distinct on (one_field) ....
Забыл уточнить, у меня MySQL. Нужно придумать что-то именно для него
Желание мягко говоря странное, представим таблицу с полями (a,b) и двумя записями (1,3),(2,3). Что должен выдать запрос select a, distinct b from tablename? Понятно что выдана будет одна запись во втором столбце которой будет 3, но что при этом должно быть в первом и почему?
>Желание мягко говоря странное, представим таблицу с полями (a,b) и двумя записями
>(1,3),(2,3). Что должен выдать запрос select a, distinct b from tablename?
>Понятно что выдана будет одна запись во втором столбце которой будет
>3, но что при этом должно быть в первом и почему?
>Мне нужно, чтобы работало это аналогично GROUP BY b, в моем случае для одинаковых b будут одинаковые a, но DISTINCT использовать не могу, т.к. один из параметров это rate вычисляемый с помощью MATCH AGAINST IN BOOLEAN MODE и используемый для сортировки. Он может немного отличаться для одинаковых b.
>Желание мягко говоря странное, представим таблицу с полями (a,b) и двумя записями
>(1,3),(2,3). Что должен выдать запрос select a, distinct b from tablename?
>Понятно что выдана будет одна запись во втором столбце которой будет
>3, но что при этом должно быть в первом и почему?
>:) Не.... будет произведение select a.a, b.b from (select a from tablename) a, (select distinct b b from tablename) b
Для (1,2) (3,4)
1 3
2 3
1 4
2 4
:)))) Шутка