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

Откуда:
Сообщений: 29
Есть база на mssql 2005, восстановленная из резервной копии (.bak), с предустановленной сортировкой таблиц в режиме ASC (по возрастанию) т.е данные при открытии таблицы выводятся в режиме ASC. Нужно изменить порядок сортировки данных в таблице в режим DESC (по убыванию) т.е чтобы данные при открытии таблицы выводились в режиме DESC.
21 окт 14, 22:34    [16740186]     Ответить | Цитировать Сообщить модератору
 Re: Помогите изменить порядок сортировки данных в таблице базы в MS SQL server 2005  [new]
КО,
Guest
akasha9,

сортировка "бывает" только в запросах,
никаких "с предустановленной сортировкой таблиц в режиме AS" не бывает

ваш кэп
21 окт 14, 22:48    [16740238]     Ответить | Цитировать Сообщить модератору
 Re: Помогите изменить порядок сортировки данных в таблице базы в MS SQL server 2005  [new]
akasha9
Member

Откуда:
Сообщений: 29
КО,
akasha9,

сортировка "бывает" только в запросах,
никаких "с предустановленной сортировкой таблиц в режиме AS" не бывает

ваш кэп


SELECT * FROM Клиенты
ORDER BY Имя DESC;


А мне нужен результат выполнения данного запроса сразу после действий: MS Managment Studio -> имя базы -> имя таблицы -> open table.
21 окт 14, 23:49    [16740526]     Ответить | Цитировать Сообщить модератору
 Re: Помогите изменить порядок сортировки данных в таблице базы в MS SQL server 2005  [new]
SIMPLicity_
Member

Откуда: (((@)))
Сообщений: 8727
Кластерный индекс по ключевому полю с обратной сортировкой (DESC)?
21 окт 14, 23:51    [16740532]     Ответить | Цитировать Сообщить модератору
 Re: Помогите изменить порядок сортировки данных в таблице базы в MS SQL server 2005  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
akasha9
А мне нужен результат выполнения данного запроса сразу после действий: MS Managment Studio -> имя базы -> имя таблицы -> open table.


А мне - саблю, буденовку и велосипед! ((c) Анекдот)

ЗЫ. Вам уже сказали, чтобы для того, чтобы получить упорядоченный набор, правила упорядочивания должны быть заданы в кляузе ORDER BY.
21 окт 14, 23:58    [16740561]     Ответить | Цитировать Сообщить модератору
 Re: Помогите изменить порядок сортировки данных в таблице базы в MS SQL server 2005  [new]
akasha9
Member

Откуда:
Сообщений: 29
SIMPLicity_
Кластерный индекс по ключевому полю с обратной сортировкой (DESC)?


Наверное это оно, только я не знаю как это сделать.
22 окт 14, 00:00    [16740574]     Ответить | Цитировать Сообщить модератору
 Re: Помогите изменить порядок сортировки данных в таблице базы в MS SQL server 2005  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
akasha9
Наверное это оно...


Не парьтесь, не оно...
22 окт 14, 00:03    [16740592]     Ответить | Цитировать Сообщить модератору
 Re: Помогите изменить порядок сортировки данных в таблице базы в MS SQL server 2005  [new]
SIMPLicity_
Member

Откуда: (((@)))
Сообщений: 8727
pkarklin
akasha9
Наверное это оно...


Не парьтесь, не оно...

Да ладна....

Создаём, наполняем, проверяем.
+
/****** Object:  Table [dbo].[Tb1]    Script Date: 22.10.2014 00:34:23 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[Tb1](
	[Col1] [nchar](10) NULL,
	[Col2] [nchar](10) NULL,
	[Col3] [bigint] IDENTITY(1,1) NOT NULL
) ON [PRIMARY]

GO
insert tb1
values ('aaa','zzz'), ('bbb','yyy'), ('ccc','xxx'), ('ddd','www');

select * from tb1;


Col1 Col2 Col3
aaa zzz 1
bbb yyy 2
ccc xxx 3
ddd www 4



Добавляем, проверяем.
+

insert tb1
values ('aaa','zzz'), ('bbb','yyy'), ('ccc','xxx'), ('ddd','www');

select * from tb1;


Col1 Col2 Col3
aaa zzz 1
bbb yyy 2
ccc xxx 3
ddd www 4
aaa zzz 5
bbb yyy 6
ccc xxx 7
ddd www 8




Нахлобучиваем кластерный индекс по первому полю с обратной сортировкой...
+
/****** Object:  Index [IX_Tb1]    Script Date: 22.10.2014 00:43:44 ******/
CREATE CLUSTERED INDEX [IX_Tb1] ON [dbo].[Tb1]
(
	[Col1] DESC
)
-- WITH (PAD_INDEX = OFF
--        , STATISTICS_NORECOMPUTE = OFF
--        , SORT_IN_TEMPDB = OFF
--        , DROP_EXISTING = OFF
--        , ONLINE = OFF
--        , ALLOW_ROW_LOCKS = ON
--        , ALLOW_PAGE_LOCKS = ON)
GO



.... и проверяем...
+

select * from tb1;


Col1 Col2 Col3
ddd www 4
ddd www 8
ccc xxx 7
ccc xxx 3
bbb yyy 6
bbb yyy 2
aaa zzz 1
aaa zzz 5


22 окт 14, 00:48    [16740749]     Ответить | Цитировать Сообщить модератору
 Re: Помогите изменить порядок сортировки данных в таблице базы в MS SQL server 2005  [new]
SIMPLicity_
Member

Откуда: (((@)))
Сообщений: 8727
select @@version:

Microsoft SQL Server 2014 - 12.0.2000.8 (X64)
Feb 20 2014 20:04:26
Copyright (c) Microsoft Corporation
Enterprise Evaluation Edition (64-bit) on Windows NT 6.4 <X64> (Build 9841: ) (Hypervisor)


----------------

Режим совместимости базы: MSSQL-2008 (извините, но меньше никак ), collation БАЗЫ: SQL_Latin1_General_CP1251_CI_AS (есличо).
22 окт 14, 00:52    [16740760]     Ответить | Цитировать Сообщить модератору
 Re: Помогите изменить порядок сортировки данных в таблице базы в MS SQL server 2005  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
SIMPLicity_,

В тепличных условиях (все данные на одной странице, сразу после создания индекса, не было удалений\изменений, один раз) - да. В общем случае - нет.
22 окт 14, 06:41    [16740947]     Ответить | Цитировать Сообщить модератору
 Re: Помогите изменить порядок сортировки данных в таблице базы в MS SQL server 2005  [new]
SIMPLicity_
Member

Откуда: (((@)))
Сообщений: 8727
pkarklin
SIMPLicity_,

В тепличных условиях (все данные на одной странице, сразу после создания индекса, не было удалений\изменений, один раз) - да. В общем случае - нет.

Ок!,- яфкурсе. Я бы даже уточнил - для определённого объёма данных и отсутствия параллелелизма при селекте. А так чо,- человеку прокатит (нах@я только такое - непонятно, но, думаю, что устроит).

==================
PS Я, кстати, тоже в команде тех, кто "order by".
PPS А у нас опять снег....
22 окт 14, 10:49    [16741664]     Ответить | Цитировать Сообщить модератору
 Re: Помогите изменить порядок сортировки данных в таблице базы в MS SQL server 2005  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7868
автор
с предустановленной сортировкой таблиц в режиме ASC


Такого параметра базы данные в природе не существует, это фантазии автора.
Чтобы SSMS выводил нужную сортировку, необходимо подправить скрипт запроса.
22 окт 14, 11:36    [16741975]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить