Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 rowid - или номер строки в таблице  [new]
b10s
Member

Откуда:
Сообщений: 108
Доброго времени суток!

Есть ли поле аля rowid, содержащее номер строки в таблице?
Если да, то как к нему поиметь доступ?

MS SQL 2008R2
29 окт 13, 17:38    [15048167]     Ответить | Цитировать Сообщить модератору
 Re: rowid - или номер строки в таблице  [new]
Гость333
Member

Откуда:
Сообщений: 3683
b10s
rowid, содержащее номер строки в таблице?

rowid — это не номер строки в таблице.
Лучше расскажите, что именно вам нужно, и для каких целей вы хотите это использовать.
29 окт 13, 17:44    [15048203]     Ответить | Цитировать Сообщить модератору
 Re: rowid - или номер строки в таблице  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
как и к любому другому...
29 окт 13, 17:44    [15048208]     Ответить | Цитировать Сообщить модератору
 Re: rowid - или номер строки в таблице  [new]
Сон Веры Павловны
Member

Откуда:
Сообщений: 6204
b10s
Доброго времени суток!

Есть ли поле аля rowid, содержащее номер строки в таблице?
Если да, то как к нему поиметь доступ?

MS SQL 2008R2

Нет, в MSSQL такого поля нет.
Вот тут на второй странице темы есть про некоторый хак через fn_PhysLocFormatter, позволяющий получить аналог ораклового rowid (физический адрес записи), но далее же и написано, что способ этот а) очень ресурсоемок; б) как и в оракле, чреват коллизиями при реорганизации таблицы. Используйте нумерацию записей в выборке, либо идентифицирующие поля.
29 окт 13, 19:27    [15048688]     Ответить | Цитировать Сообщить модератору
 Re: rowid - или номер строки в таблице  [new]
b10s
Member

Откуда:
Сообщений: 108
Сон Веры Павловны
b10s
Доброго времени суток!

Есть ли поле аля rowid, содержащее номер строки в таблице?
Если да, то как к нему поиметь доступ?

MS SQL 2008R2

Нет, в MSSQL такого поля нет.
Вот тут на второй странице темы есть про некоторый хак через fn_PhysLocFormatter, позволяющий получить аналог ораклового rowid (физический адрес записи), но далее же и написано, что способ этот а) очень ресурсоемок; б) как и в оракле, чреват коллизиями при реорганизации таблицы. Используйте нумерацию записей в выборке, либо идентифицирующие поля.


Спасибо!

О нумерации записей в выборке. Возможно ли произвести изящную нумерацию в выборке, не зная структуру таблицы.
Т.е. первое что приходит на ум - это row_number over(order by some_field), где нужно знать some_field. Возможно ли избежать знания some_field?
30 окт 13, 13:12    [15052146]     Ответить | Цитировать Сообщить модератору
 Re: rowid - или номер строки в таблице  [new]
Гость333
Member

Откуда:
Сообщений: 3683
b10s
Т.е. первое что приходит на ум - это row_number over(order by some_field), где нужно знать some_field. Возможно ли избежать знания some_field?

row_number() over(order by (select 1))
30 окт 13, 13:16    [15052175]     Ответить | Цитировать Сообщить модератору
 Re: rowid - или номер строки в таблице  [new]
b10s
Member

Откуда:
Сообщений: 108
Гость333,

гуд! то, чт онадо! спасибо!
30 окт 13, 16:56    [15054306]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить