Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
уникальность в select'e
|
|||
|---|---|---|---|
|
#18+
sybase ase 12.5 простейший пример есть таблица example с полем id- поле неуникальное нужно сделать из таблицы селект, чтобы каждое значение id в выборке присутствовало только один раз, т.е. выборка была бы уникальной какое из неуникальных значений попадёт в выборку неважно группировка и введение уникальности для решения задачи не подходят как должен выглядеть такой запрос? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2006, 15:13 |
|
||
|
уникальность в select'e
|
|||
|---|---|---|---|
|
#18+
1. distinct 2. По набору даннчх пробежаться сортированным курсором и выкидывать дубликаты ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2006, 15:47 |
|
||
|
уникальность в select'e
|
|||
|---|---|---|---|
|
#18+
Maktub1. distinct 2. По набору даннчх пробежаться сортированным курсором и выкидывать дубликаты Хмм... дистинкт применяется ко всей записи, а можно ли его применить к конкретному полю записи? Как не стараюсь у меня это не получается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2006, 16:30 |
|
||
|
уникальность в select'e
|
|||
|---|---|---|---|
|
#18+
having count(FIELD) = 1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2006, 17:26 |
|
||
|
уникальность в select'e
|
|||
|---|---|---|---|
|
#18+
Соврал. Если на таблице есть PK (pk) select * from example ex where ex.pk = (select min(pk) from example i where i.id = ex.id) group by ex.id, ex.pk ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2006, 17:49 |
|
||
|
уникальность в select'e
|
|||
|---|---|---|---|
|
#18+
Я бы создал таблицу с кластерным индексом на это поле и с параметром IGNORE_DUP_KEY и вставил бы туда все данные. Дублирующие записи удалятся при этом автоматом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2006, 20:20 |
|
||
|
уникальность в select'e
|
|||
|---|---|---|---|
|
#18+
Хотелось бы сделать выборку только с помощью SQL-запроса, не создавая никаких лишних таблиц. он жеselect * from example ex where ex.pk = (select min(pk) from example i where i.id = ex.id) group by ex.id, ex.pk Этот вариант отлично подходит. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2006, 06:01 |
|
||
|
уникальность в select'e
|
|||
|---|---|---|---|
|
#18+
Этот вариант очень опасный. потому что запрос может работать очень долго и занимать очень большие ресурсы. Но все естественно зависит от таблиц. Поэтому протестируйте все очень внимательно перед тем как отправлять в продакшн. посмотрите планы, стоимости . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2006, 10:24 |
|
||
|
уникальность в select'e
|
|||
|---|---|---|---|
|
#18+
rec15Хотелось бы сделать выборку только с помощью SQL-запроса, не создавая никаких лишних таблиц. он жеselect * from example ex where ex.pk = (select min(pk) from example i where i.id = ex.id) group by ex.id, ex.pk Этот вариант отлично подходит. Спасибо! ;)) зачё-ё-ё-т автор топика передумал и разрешил группировки ;) ибо в первом авторском посте читаем следующее: " группировка и введение уникальности для решения задачи не подходят ". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2006, 10:33 |
|
||
|
уникальность в select'e
|
|||
|---|---|---|---|
|
#18+
komrad rec15Хотелось бы сделать выборку только с помощью SQL-запроса, не создавая никаких лишних таблиц. он жеselect * from example ex where ex.pk = (select min(pk) from example i where i.id = ex.id) group by ex.id, ex.pk Этот вариант отлично подходит. Спасибо! ;)) зачё-ё-ё-т автор топика передумал и разрешил группировки ;) ибо в первом авторском посте читаем следующее: " группировка и введение уникальности для решения задачи не подходят ". Вобще-то этот запрос прекрасно работает в таком виде select * from example ex where ex.pk = (select min(pk) from example i where i.id = ex.id) без всяких группировок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2006, 12:34 |
|
||
|
уникальность в select'e
|
|||
|---|---|---|---|
|
#18+
не совсем понял, зачем там вообще группировки были поставлены? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2006, 13:38 |
|
||
|
уникальность в select'e
|
|||
|---|---|---|---|
|
#18+
_nicht_schissen_не совсем понял, зачем там вообще группировки были поставлены? От балды :) Я ж запрос не выполнял :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2006, 15:51 |
|
||
|
уникальность в select'e
|
|||
|---|---|---|---|
|
#18+
Приведенное выше решение не соответствует поставленной задаче, в которой ничего не говорится про наличие уникального поля. :) Интересно было бы посмотреть на такой запрос! С ходу не придумал как это сделать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2006, 16:51 |
|
||
|
уникальность в select'e
|
|||
|---|---|---|---|
|
#18+
_nicht_schissen_Приведенное выше решение не соответствует поставленной задаче, в которой ничего не говорится про наличие уникального поля. :) Интересно было бы посмотреть на такой запрос! С ходу не придумал как это сделать... Не в каждом вопросе есть полная информация. Иногда можно чуть-чуть додумать. Хорошо, когда ожидания оправдываются. Если в такой таблице нет PK - без псевдоPK типа rowid (который в Oracle) и невозможности построить запрос вида Код: plaintext 1. Oracle, блин, решает :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2006, 20:10 |
|
||
|
|

start [/forum/topic.php?fid=55&msg=33974657&tid=2012599]: |
0ms |
get settings: |
11ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
86ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
69ms |
get tp. blocked users: |
2ms |
| others: | 255ms |
| total: | 464ms |

| 0 / 0 |
