![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
2000 Добавить в SELECT номер строки. [MSSQL]
KAA © (2002-08-14 19:17:00)Как можно в селекте сделать еще одно поле, в котором будет порядковый номер строки? Т.е. чтоб все строки были подряд пронумерованы.
KAA (2002-08-15 11:03:00) [41]2 Praco ©
Все понял, протормозил немного. :)
Большое спасибо, сработало.
3JIA9I CyKA (2002-08-15 10:53:00) [42]2Val - Нету.
Praco (2002-08-15 10:49:00) [43]KAA © (15.08.02 09:36)
au_id - уникальный идентификатор. a1 - алиас таблички. Если не понятно, почитай М.Грабера.
Johnmen © (15.08.02 09:55)
>Praco © (15.08.02 09:25)
>Реальные воплощения SQL серверов, как правило, не соответствуют
>требованиям реляционной модели.
Каким это таким требованиям ???
Например: в реляционной модели порядок следования полей не важен. В реальных SQL серверах поля пронумерованы и их порядок, как правило, важен.
NULL значения и операции с ними, трактовка доменов, и т.д.,... вспоминать не охота. Короче, теория реляционных отношений - наука, теория реляционных баз - прикладная псевдонаучка, слишком много упрощений и аксиом. Конкретный SQL сервер в стремлении расширить свои возможности еще больше отходит от требовани теории. MS SQL - яркий пример.
Главный аргумент: реляционное отношение не может быть ненормализовано, иначе это не отношение. Но любой SQL сервер позволяет создавать ненормализованные базы.
Продолжать не хочу, Дейта читал давно. :)
Val (2002-08-15 10:45:00) [44]кстати, вопрос знатокам MSSQL: а нет ли у данного сервера такого замечательного псевдостолбца как rownum из Oracle?
3JIA9I CyKA (2002-08-15 10:32:00) [45]Reindeer Moss Eaterдело говорит!
Reindeer Moss Eater (2002-08-15 10:21:00) [46]Сформируйте промежуточную таблицу, добавьте поле "Номер по порядку" Пройдитесь курсором и пронумеруйте это поле.
Polevi (2002-08-15 10:17:00) [47]2Suntechnic ©
Уважаемый, если у меня набор данных отсортирован по коду товара, я вполне могу расчитывать на то что каждый раз порядок строк будет одинаков (если не добавлять позиций). И не надо мне сообщать прописные истины насчет понятия номера записи. В моем понятии клиент это не оператор, который использует мою программу, а клиент компании с которым оператор работает.
2Reindeer Moss Eater
У меня в таблице содержимого счетов несколько милионов записей - пользователю конечно будет очень интересно узнать что первая позиция в его счете имеет номер 1347345 - вот они с клиентом будут общий язык находить по телефону когда клиент из мухосранска передумал и хочет вместо 10 шт товара взять 11 штук..
KAA (2002-08-15 10:16:00) [48]2 Reindeer Moss Eater
Нет никакой книги эксел, ее клиент создает, отрабатывает и удаляет. Мало того, сегодня одна книга, завтра ее изменят, послезавтра какой-нибудь кристал репорт прикрутят, а процедура должна быть универсальной, чтоб один раз написать и забыть.
Reindeer Moss Eater (2002-08-15 10:14:00) [49]Либо промежуточная таблица с дополнительным полем "Номер записи" спасет тебя.
Reindeer Moss Eater (2002-08-15 10:12:00) [50]>KAA
Не надо. Сделай запрос к данным из книги Excel. Тем более у тебя MSSQL.
KAA (2002-08-15 10:10:00) [51]2 Reindeer Moss Eater ©
>Не надо заставлять SQL сервер нумеровать возвращаемый рекордсет, надо нумеровать вставляемые в Excel данные.
Надо. Передо мной стоит задача, полностью формировать таблицу. Полностью, это значит что и порядковые номера записей. Это не технический, а административный вопрос.
Reindeer Moss Eater (2002-08-15 10:07:00) [52]Если паровоз должен повернуть, совсем не обязательно в его топку бросать кривые дрова.
Не надо заставлять SQL сервер нумеровать возвращаемый рекордсет, надо нумеровать вставляемые в Excel данные.
wicked (2002-08-15 10:04:00) [53]2 Praco ©
спасибо за идеи... :)
(век живи - век учись...)
Johnmen (2002-08-15 09:55:00) [54]>Praco © (15.08.02 09:25)
>Реальные воплощения SQL серверов, как правило, не соответствуют
>требованиям реляционной модели.
Каким это таким требованиям ???
KAA (2002-08-15 09:48:00) [55]>AlexSam
В эксель я их вывожу.
AlexSam (2002-08-15 09:45:00) [56]Если ты выводишь данные в QR можно построить через QRLabel в событии BeforePrint: i:=i+1
Mike Kouzmine (2002-08-15 09:37:00) [57]Так им. Молодец Praco. Я про "А не нужно теоретизировать.Кроме того, если в форме отчета есть поле "№ п/п", не будешь же рассказывать юзеру теорию реляционных отношений."
KAA (2002-08-15 09:36:00) [58]>Praco
Можно чуть подробней, что такое a1, a и поле au_id ?
>Кроме того, если в форме отчета есть поле "№ п/п", не будешь же рассказывать юзеру теорию реляционных отношений.
Все именно так. :)
Praco (2002-08-15 09:25:00) [59]Примерно так:
select (select count(*) from authors a1 where a1.au_id <= a.au_id), a.* from authors a
order by a.au_id
"а что есть порядковый номер?" А не нужно теоретизировать. Вопрос-то конкретный. Реальные воплощения SQL серверов, как правило, не соответствуют требованиям реляционной модели. Кроме того, если в форме отчета есть поле "№ п/п", не будешь же рассказывать юзеру теорию реляционных отношений.
KAA (2002-08-15 09:24:00) [60]Ничего по номеру искать не надо будет, это просто информационное поле. Запрос напрямую клиентским приложением без разбора загоняется в эксел. Одно из полей - это порядковый номер записи, как правильно заметил Polevi, это будет счет выдаваемый клиенту.
>Val
Так хоть подскажи, или ссылку дай.