Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Уникальный столбец  [new]
equipmentt
Member

Откуда:
Сообщений: 24
Как в view добавить уникальный столбец,

по аналогии с

NEWID() as REC_ID,

но чтобы приращение в каждой строке было ровно на единицу начиная от нуля

ms sql 2000
17 сен 14, 12:45    [16585082]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
Glory
Member

Откуда:
Сообщений: 104760
https://www.sql.ru/faq/faq_topic.aspx?fid=126
17 сен 14, 12:46    [16585088]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37069
https://www.sql.ru/faq/faq_topic.aspx?fid=126
17 сен 14, 12:46    [16585089]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
equipmentt
Member

Откуда:
Сообщений: 24
возможности задать identity в исходной таблице нет.
только в виве, надо выкрутиться
17 сен 14, 13:08    [16585218]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
Glory
Member

Откуда:
Сообщений: 104760
equipmentt
возможности задать identity в исходной таблице нет.

identity во всех примерах - это ПервичныйКлюч
17 сен 14, 13:10    [16585224]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
equipmentt
Member

Откуда:
Сообщений: 24
выбрал 5й способ в квери анализере работает но

в view declare @rank_table table такое не рускает....
17 сен 14, 13:47    [16585465]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
Glory
Member

Откуда:
Сообщений: 104760
equipmentt
в view declare @rank_table table такое не рускает....

И не должен
17 сен 14, 13:48    [16585475]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
equipmentt
Member

Откуда:
Сообщений: 24
Glory
equipmentt
в view declare @rank_table table такое не рускает....

И не должен

как сделать в view тогда?
17 сен 14, 13:56    [16585526]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
Glory
Member

Откуда:
Сообщений: 104760
equipmentt
Glory
пропущено...

И не должен

как сделать в view тогда?

Известно как.
Соблюдая синтаксис, который разрешен во view.
17 сен 14, 13:57    [16585533]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
equipmentt
Member

Откуда:
Сообщений: 24
вопрос был помочь. о том что если все делать оп правилам и заработает я как-то и сам понимаю
17 сен 14, 14:00    [16585544]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
iap
Member

Откуда: Москва
Сообщений: 47000
equipmentt,

там уже есть уникальное поле?
Если нет, то никак не сделать.
17 сен 14, 14:01    [16585552]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37069
equipmentt
вопрос был помочь. о том что если все делать оп правилам и заработает я как-то и сам понимаю
Чем вам помочь? Подъехать и скопировать способ №1, №2 или №3 из FAQ?

Сообщение было отредактировано: 17 сен 14, 14:03
17 сен 14, 14:02    [16585556]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
Glory
Member

Откуда:
Сообщений: 104760
equipmentt
вопрос был помочь. о том что если все делать оп правилам и заработает я как-то и сам понимаю

выбрать за вас вариант из FAQ что ли ?
Или разучить синтаксис view ?
17 сен 14, 14:06    [16585583]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
equipmentt
Member

Откуда:
Сообщений: 24
Glory
equipmentt
вопрос был помочь. о том что если все делать оп правилам и заработает я как-то и сам понимаю

выбрать за вас вариант из FAQ что ли ?
Или разучить синтаксис view ?

2 и 3 не подходят под мою задачу.
4й подходит

проверяю дальше...
17 сен 14, 14:10    [16585605]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
equipmentt
Member

Откуда:
Сообщений: 24
1 й тоже не подходит
17 сен 14, 14:13    [16585627]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
Glory
Member

Откуда:
Сообщений: 104760
equipmentt
2 и 3 не подходят под мою задачу.
4й подходит

Там все варианты подходят под задачу "пронумеровать результат запроса"
17 сен 14, 14:13    [16585629]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
iap
Member

Откуда: Москва
Сообщений: 47000
equipmentt
4й подходит
Во VIEW??
Это как же?
17 сен 14, 14:13    [16585631]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
Glory
Member

Откуда:
Сообщений: 104760
equipmentt
1 й тоже не подходит

Значит ваша задача не имеет решения.
17 сен 14, 14:13    [16585632]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
iap
Member

Откуда: Москва
Сообщений: 47000
iap
equipmentt,

там уже есть уникальное поле?
Если нет, то никак не сделать.
Разве что сделать ещё VIEW, в котором SELECT из первоначального в сочетании с NEWID()
17 сен 14, 14:16    [16585654]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
o-o
Guest
Glory
equipmentt
2 и 3 не подходят под мою задачу.
4й подходит

Там все варианты подходят под задачу "пронумеровать результат запроса"

с оговоркой
iap
equipmentt,

там уже есть уникальное поле?
Если нет, то никак не сделать.


на вопрос iap ответьте уже, чем все подряд пробовать
17 сен 14, 14:18    [16585669]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
equipmentt
Member

Откуда:
Сообщений: 24
есть уникальное поле. но оно уникально для каждых 4х строк и первый второй и.. способы считают эти повторы.
4й способ отрабатывает честно
17 сен 14, 14:20    [16585686]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37069
Или делайте в вашей выборке уникально поле или набор полей, которые однозначно определяют порядок, или переходите на сервер 2005й версии и выше или во view не получится.
17 сен 14, 14:22    [16585702]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
equipmentt
Member

Откуда:
Сообщений: 24
/* способ №5, переменная типа table с полем identity */
declare @rank_table

этот честно
17 сен 14, 14:22    [16585705]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
equipmentt
Member

Откуда:
Сообщений: 24
Гавриленко Сергей Алексеевич
Или делайте в вашей выборке уникально поле или набор полей, которые однозначно определяют порядок, или переходите на сервер 2005й версии и выше или во view не получится.


есть сделать в выборке уникальное поле NEWID() as REC_ID,

то способы со стандартным SQL не хотят его кушать "The count aggregate operation cannot take a uniqueidentifier data type as an argument."
17 сен 14, 14:26    [16585738]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный столбец  [new]
iap
Member

Откуда: Москва
Сообщений: 47000
equipmentt
Гавриленко Сергей Алексеевич
Или делайте в вашей выборке уникально поле или набор полей, которые однозначно определяют порядок, или переходите на сервер 2005й версии и выше или во view не получится.


есть сделать в выборке уникальное поле NEWID() as REC_ID,

то способы со стандартным SQL не хотят его кушать "The count aggregate operation cannot take a uniqueidentifier data type as an argument."
1. Добавляем уникальное поле во VIEW типа UNIQUEIDENTIFIER:
ALTER VIEW [Первоначальное VIEW] AS SELECT ID=NEWID(),.... FROM ... (и что там сейчас у Вас)
2. Делаем новое VIEW с ID, увеличивающемся на 1:
CREATE VIEW [Новое VIEW] AS
SELECT ID=(SELECT COUNT(*) FROM [Первоначальное VIEW] O WHERE O.ID<=N.ID),N.*
FROM [Первоначальное VIEW] N;
17 сен 14, 14:34    [16585794]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить