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

Откуда:
Сообщений: 3947
vino
sp
а как можно ускорить такой запрос?

А что это за разделение таблиц на Укр и Рус? Вам же поиск нужен по всему множеству - вот и избавитесь от OR


Фамилий имен и отчеств на украинском гораздо больше чем их оригиналов на русском - потому как Вы знаете и наблюдаете что по указке из Вашингтона у нас оказываецца и слоны от украинцев произошли ))) тоесть Евсеев - на украинском вы найдете 5 вариантов
поэтому содеденив все это г в одну кучу получим многократное увеличение данных (((

и как соединение укр и рус Фамилий поможет избавиться от проблемы с OR?
18 май 09, 13:32    [7193061]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
vino
Member

Откуда:
Сообщений: 1191
sp, у Вас в запросе
select top(50)
		p.*
	from
		dbo.Persons p
		inner join dbo.RusF rf on rf.RusFID = p.RusFID
		inner join dbo.RusI ri on ri.RusIID = p.RusIID
		inner join dbo.RusO ro on ro.RusOID = p.RusOID
		inner join dbo.UkrF uf on uf.UkrFID = p.UkrFID
		inner join dbo.UkrI ui on ui.UkrIID = p.UkrIID
		inner join dbo.UkrO uo on uo.UkrOID = p.UkrOID		
	where
		(
		 (rf.RusF like 'Будар%' and 
		  ri.RusI like '%' and
		  ro.RusO like '%')
		 
		 or
		 
		 (uf.UkrF like 'Будар%' and 
		  ui.UkrI like '%' and
		  uo.UkrO like '%') 
		)
нет условий, для которых полезно разбрасывание по таблицам, это уже не нормализация а претензия на партиции, здесь вряд ли уместная, так как только усложняют поиск.
Как думаете, легче ли выполнить шесть соединений вместо трех? Конечно, если у Вас много ядер, то тогда уж распараллеливайте запрос...
Но я не вижу в разделении справочников на русскую и украинскую части
18 май 09, 14:19    [7193371]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
sp
Member

Откуда:
Сообщений: 3947
vino
sp, у Вас в запросе
select top(50)
		p.*
	from
		dbo.Persons p
		inner join dbo.RusF rf on rf.RusFID = p.RusFID
		inner join dbo.RusI ri on ri.RusIID = p.RusIID
		inner join dbo.RusO ro on ro.RusOID = p.RusOID
		inner join dbo.UkrF uf on uf.UkrFID = p.UkrFID
		inner join dbo.UkrI ui on ui.UkrIID = p.UkrIID
		inner join dbo.UkrO uo on uo.UkrOID = p.UkrOID		
	where
		(
		 (rf.RusF like 'Будар%' and 
		  ri.RusI like '%' and
		  ro.RusO like '%')
		 
		 or
		 
		 (uf.UkrF like 'Будар%' and 
		  ui.UkrI like '%' and
		  uo.UkrO like '%') 
		)
нет условий, для которых полезно разбрасывание по таблицам, это уже не нормализация а претензия на партиции, здесь вряд ли уместная, так как только усложняют поиск.
Как думаете, легче ли выполнить шесть соединений вместо трех? Конечно, если у Вас много ядер, то тогда уж распараллеливайте запрос...
Но я не вижу в разделении справочников на русскую и украинскую части


я же приводил довод - на одну русскую фамилию может быть до 5 вариантов на украинском - неужели это не довод отделить данные от мусора?
18 май 09, 14:22    [7193396]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
vino
Member

Откуда:
Сообщений: 1191
sp
vino
sp, у Вас в запросе
select top(50)
		p.*
	from
		dbo.Persons p
		inner join dbo.RusF rf on rf.RusFID = p.RusFID
		inner join dbo.RusI ri on ri.RusIID = p.RusIID
		inner join dbo.RusO ro on ro.RusOID = p.RusOID
		inner join dbo.UkrF uf on uf.UkrFID = p.UkrFID
		inner join dbo.UkrI ui on ui.UkrIID = p.UkrIID
		inner join dbo.UkrO uo on uo.UkrOID = p.UkrOID		
	where
		(
		 (rf.RusF like 'Будар%' and 
		  ri.RusI like '%' and
		  ro.RusO like '%')
		 
		 or
		 
		 (uf.UkrF like 'Будар%' and 
		  ui.UkrI like '%' and
		  uo.UkrO like '%') 
		)
нет условий, для которых полезно разбрасывание по таблицам, это уже не нормализация а претензия на партиции, здесь вряд ли уместная, так как только усложняют поиск.
Как думаете, легче ли выполнить шесть соединений вместо трех? Конечно, если у Вас много ядер, то тогда уж распараллеливайте запрос...
Но я не вижу в разделении справочников на русскую и украинскую части

я же приводил довод - на одну русскую фамилию может быть до 5 вариантов на украинском - неужели это не довод отделить данные от мусора?

Посмотрите внимательно - Вы фактически не используете отделение "мусора" (интересно, что Вы мусором считаете?)
18 май 09, 14:26    [7193430]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
ветерочек
Member

Откуда: СПБ
Сообщений: 153
sp
vino
sp, у Вас в запросе
select top(50)
		p.*
	from
		dbo.Persons p
		inner join dbo.RusF rf on rf.RusFID = p.RusFID
		inner join dbo.RusI ri on ri.RusIID = p.RusIID
		inner join dbo.RusO ro on ro.RusOID = p.RusOID
		inner join dbo.UkrF uf on uf.UkrFID = p.UkrFID
		inner join dbo.UkrI ui on ui.UkrIID = p.UkrIID
		inner join dbo.UkrO uo on uo.UkrOID = p.UkrOID		
	where
		(
		 (rf.RusF like 'Будар%' and 
		  ri.RusI like '%' and
		  ro.RusO like '%')
		 
		 or
		 
		 (uf.UkrF like 'Будар%' and 
		  ui.UkrI like '%' and
		  uo.UkrO like '%') 
		)
нет условий, для которых полезно разбрасывание по таблицам, это уже не нормализация а претензия на партиции, здесь вряд ли уместная, так как только усложняют поиск.
Как думаете, легче ли выполнить шесть соединений вместо трех? Конечно, если у Вас много ядер, то тогда уж распараллеливайте запрос...
Но я не вижу в разделении справочников на русскую и украинскую части


я же приводил довод - на одну русскую фамилию может быть до 5 вариантов на украинском - неужели это не довод отделить данные от мусора?

Это в таблице персон есть и русское имя и украинское сразу? или одно из них
а -- до 5 вариантов -- это как понимать? запись 5 раз повторяется?
задачу поконкретнее огласи.
18 май 09, 14:31    [7193476]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
sp
Member

Откуда:
Сообщений: 3947
vino
Посмотрите внимательно - Вы фактически не используете отделение "мусора" (интересно, что Вы мусором считаете?)


Я не пойму вашей мысли - если объединить русскую фамилию с 5ю вариантами украинской - получим 5 одинаковых русских фамилий и 5 уникальных украинских - объем базы вырастет на 4 длины русской фамилии + получим неуникальные русские фамилии - как мне потом соединять Persons с фамилиями? какую запись из 5 я должен буду выбрать?

Вы хотите сказать что ежели произвести объединение - то сервер быстрее будет выбирать по OR?
18 май 09, 14:35    [7193516]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
sp
Member

Откуда:
Сообщений: 3947
ветерочек
Это в таблице персон есть и русское имя и украинское сразу? или одно из них
а -- до 5 вариантов -- это как понимать? запись 5 раз повторяется?
задачу поконкретнее огласи.


Привожу пример:
русс - Бударин Вадим Валерьевич

на украинском есть варианты :
Бударин Вадим Валерiйович
Бударiн Вадим Валерiйович
Бударiн Вадiм Валерьевич
Бударин Вадiм Валерьевич

так понятней? это реальные примеры из Окраинской действительности - намеренно извратился с этими ФИО (она в базе одна) но в реальности в сложных и не сложных наименованиях у украинцев свое представление о написании ФИО
18 май 09, 14:41    [7193567]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
sp
Member

Откуда:
Сообщений: 3947
Т.е. если к примеру в базе 4 русскоязычных Бударин Вадим Валерьевич
то мы увидим 5 записей вот такого вот вида

1)Бударин Вадим Валерьевич - рус
Бударин Вадим Валерiйович - укр

2)Бударин Вадим Валерьевич
Бударiн Вадим Валерiйович

3)Бударин Вадим Валерьевич
Бударiн Вадiм Валерьевич

4)Бударин Вадим Валерьевич
Бударин Вадiм Валерьевич
18 май 09, 14:44    [7193584]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
ветерочек
Member

Откуда: СПБ
Сообщений: 153
sp
ветерочек
Это в таблице персон есть и русское имя и украинское сразу? или одно из них
а -- до 5 вариантов -- это как понимать? запись 5 раз повторяется?
задачу поконкретнее огласи.


Привожу пример:
русс - Бударин Вадим Валерьевич

на украинском есть варианты :
Бударин Вадим Валерiйович
Бударiн Вадим Валерiйович
Бударiн Вадiм Валерьевич
Бударин Вадiм Валерьевич

так понятней? это реальные примеры из Окраинской действительности - намеренно извратился с этими ФИО (она в базе одна) но в реальности в сложных и не сложных наименованиях у украинцев свое представление о написании ФИО

ну тогда тебе лучше что то типа
CREATE TABLE [dbo].[RusF](
	[F] [varchar](50) NOT NULL,
	[Person_FK] INT NOT NULL, -- то поле которое  FK к dbo.Persons.RusFID 
                                             ---оно одинаковое у тех 5 вариантов фамилии 
	[Language] tinyint not null  -- можно добавить таблицу справочник 
 CONSTRAINT [PK_RusF] PRIMARY KEY CLUSTERED ([F],[Persom_FK])
можно и дальше нормализовывать...
18 май 09, 14:46    [7193598]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
sp
Member

Откуда:
Сообщений: 3947
ветерочек
ну тогда тебе лучше что то типа
CREATE TABLE [dbo].[RusF](
	[F] [varchar](50) NOT NULL,
	[Person_FK] INT NOT NULL, -- то поле которое  FK к dbo.Persons.RusFID 
                                             ---оно одинаковое у тех 5 вариантов фамилии 
	[Language] tinyint not null  -- можно добавить таблицу справочник 
 CONSTRAINT [PK_RusF] PRIMARY KEY CLUSTERED ([F],[Persom_FK])
можно и дальше нормализовывать...


ну а чем мой вариант плох?
18 май 09, 14:50    [7193630]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
ветерочек
Member

Откуда: СПБ
Сообщений: 153
sp
ветерочек
ну тогда тебе лучше что то типа
CREATE TABLE [dbo].[RusF](
	[F] [varchar](50) NOT NULL,
	[Person_FK] INT NOT NULL, -- то поле которое  FK к dbo.Persons.RusFID 
                                             ---оно одинаковое у тех 5 вариантов фамилии 
	[Language] tinyint not null  -- можно добавить таблицу справочник 
 CONSTRAINT [PK_RusF] PRIMARY KEY CLUSTERED ([F],[Persom_FK])
можно и дальше нормализовывать...


ну а чем мой вариант плох?

я не понял
имеется в виду что у человека есть 1 русская фамилия и 1 украинская и найти мы его можем или по1ой руской или поодной украинской?
или у одного человека сразу может быть 5 украинских фамилий?
или у него вообще только одна рус фамилия но мы найдем Бударина по любой из возможных фамилий даже на украинском?
18 май 09, 14:56    [7193681]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
vino
Member

Откуда:
Сообщений: 1191
sp
vino
Посмотрите внимательно - Вы фактически не используете отделение "мусора" (интересно, что Вы мусором считаете?)


Я не пойму вашей мысли - если объединить русскую фамилию с 5ю вариантами украинской - получим 5 одинаковых русских фамилий и 5 уникальных украинских - объем базы вырастет на 4 длины русской фамилии + получим неуникальные русские фамилии - как мне потом соединять Persons с фамилиями? какую запись из 5 я должен буду выбрать?

Вы хотите сказать что ежели произвести объединение - то сервер быстрее будет выбирать по OR?
при чем тут объединение UNION??? Речь о том, что нужна всего одна таблица фамилий, одна - имен и одна - отчеств. Не надо их делить по языку, тогда остается только три соединения и до трех and в условии
18 май 09, 14:59    [7193710]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
sp
Member

Откуда:
Сообщений: 3947
ветерочек
я не понял
имеется в виду что у человека есть 1 русская фамилия и 1 украинская и найти мы его можем или по1ой руской или поодной украинской?
или у одного человека сразу может быть 5 украинских фамилий?
или у него вообще только одна рус фамилия но мы найдем Бударина по любой из возможных фамилий даже на украинском?


естественно у каждой русской фамилии есть свой эквивалент украинского написания - в паспорте указаны русское ФИО и его попытка перевода на украинский
Если в базе есть 5 однофамильце, Именцев и Отчественников на русском (к примеру Иванов Иван Иванович) то на украинском у них может оказацца что они и не такие уж однофамильцы, одноименцы и одноотчественники

Мне в принцыпе нет нужды искать 5 вариантов украинского наименования - я делаю справочники отдельно русских и украинских наименований с целью исключения дубликатов + снижения объемов данных - мне безразлично что в конкретной записи стоит - я нашел в рксской таблице фамилию и в украинской и вставил ихние айдишки в Персонс, а там уникальное ли ФИО или нет мне зачем это?
написав русское ли, украинское написание фамилии я по справочнику могу найти всех кого ищу
18 май 09, 15:03    [7193748]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
sp
Member

Откуда:
Сообщений: 3947
vino

при чем тут объединение UNION??? Речь о том, что нужна всего одна таблица фамилий, одна - имен и одна - отчеств. Не надо их делить по языку, тогда остается только три соединения и до трех and в условии


под объединением я понимал ихнюю тесную неразрвную связь в одной таблице! ))))
18 май 09, 15:04    [7193765]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
ветерочек
Member

Откуда: СПБ
Сообщений: 153
sp
... - мне безразлично что в конкретной записи стоит - я нашел в рксской таблице фамилию и в украинской и вставил ихние айдишки в Персонс, а там уникальное ли ФИО или нет мне зачем это?
написав русское ли, украинское написание фамилии я по справочнику могу найти всех кого ищу

та кесли безразлично то зачем 2 таблицы?
зачем у записи в персон имень русИД и укрИД ?(даже если их и оставлять то ссылаться они должны на одну таблицу..)
18 май 09, 15:10    [7193846]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
sp
Member

Откуда:
Сообщений: 3947
ветерочек
sp
... - мне безразлично что в конкретной записи стоит - я нашел в рксской таблице фамилию и в украинской и вставил ихние айдишки в Персонс, а там уникальное ли ФИО или нет мне зачем это?
написав русское ли, украинское написание фамилии я по справочнику могу найти всех кого ищу

та кесли безразлично то зачем 2 таблицы?
зачем у записи в персон имень русИД и укрИД ?(даже если их и оставлять то ссылаться они должны на одну таблицу..)


ну я ж объяснил почему я делал 2 - чтоб уменьшить повторяемость данных
а что мне даст ссылка UkrF на RusF? разве она поможет ускорить OR запрос?
18 май 09, 15:16    [7193916]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
sp
Member

Откуда:
Сообщений: 3947
попробую сегодня вечером объеденить таблицы и о результатах доложу
18 май 09, 16:01    [7194270]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
sp
Member

Откуда:
Сообщений: 3947
Создал таблицы Фамилий Имен и Отчеств как Вы предлагали:

F(FID, RusF, UkrF)
Кластерный уникальный индек (RusF, UkrF, FID)
Уникальный индекс (FID)

по-аналогии таблицы Имен и отчеств

В таблице Persons по полям (FID,IID,OID) создан индекс

запрос
select top(50)
		p.*
	from
		dbo.Persons p
		inner join dbo.F f on f.FID = p.FID
		inner join dbo.I i on i.IID = p.IID
		inner join dbo.O o on o.OID = p.OID
	where
		(
		 (f.RusF like 'Будар%' and 
		  i.RusI like '%' and
		  o.RusO like '%')
		 
		 or
		 
		 (f.UkrF like 'Будар%' and 
		  i.UkrI like '%' and
		  o.UkrO like '%') 
		)

nтеперь летает как подорванный и это на 52х миллионах записей !!! )
Спасибо всем кто терпеливо мне помогал )
19 май 09, 05:31    [7196023]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
vino
Member

Откуда:
Сообщений: 1191
sp, и повторов нет?
Как Вы объединили множество украинских с одним русским Будариным?
Подозреваю, что придется использовать select top(50) distinct
19 май 09, 12:07    [7197283]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
sp
Member

Откуда:
Сообщений: 3947
vino
sp, и повторов нет?
Как Вы объединили множество украинских с одним русским Будариным?
Подозреваю, что придется использовать select top(50) distinct


я тупо включил все уникальные сочетания какие есть в базе
ну типа как-то так

Рус Укр
-------------------------
Бударин Бударiн
Бударин Бударин
Бударин Будорин
Бударин Бадарин
19 май 09, 17:47    [7200086]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
sp
Member

Откуда:
Сообщений: 3947
Вот спшка по поиску и выводу в грид
ALTER PROCEDURE [dbo].[Search_GetGrid1]
	@F varchar(50) = '',
	@I varchar(50) = '',
	@O varchar(50) = ''
AS
BEGIN
	SET NOCOUNT ON;
	BEGIN TRANSACTION;

	select top(50)
		f.RusF + ' ' + i.RusI + ' ' + o.RusO,
		p.Sex,
		p.INN,
		p.Birthdate
	from
		(select
			ID,
			FID,
			IID,
			OID,
			ROW_NUMBER() OVER(order by ID) as RowNum
		from
			dbo.Persons1
		) as Tmp
		inner join dbo.Persons1 p on p.ID = Tmp.ID
		inner join dbo.F f on f.FID = Tmp.FID
		inner join dbo.I i on i.IID = Tmp.IID
		inner join dbo.O o on o.OID = Tmp.OID
	where
		(f.RusF like (@F + '%') and i.RusI like (@I + '%') and o.RusO like (@O + '%')) 
		or
		(f.UkrF like (@F + '%') and i.UkrI like (@I + '%') and o.UkrO like (@O + '%'))


	COMMIT TRANSACTION;
	RETURN @@ERROR
END
19 май 09, 23:15    [7201167]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
vino
Member

Откуда:
Сообщений: 1191
Может, так лучше?
ALTER PROCEDURE [dbo].[Search_GetGrid1]
	@F1 varchar(50) = '',
	@I1 varchar(50) = '',
	@O1 varchar(50) = ''
AS
BEGIN
	SET NOCOUNT ON;
	DECLARE 	@F varchar(51), @I varchar(51), @O varchar(51)
	SELECT @F = @F1 + '%', @I = @I1 + '%', @O = @O1 + '%'
--	BEGIN TRANSACTION;

	select DISTINCT top(50)
		ROW_NUMBER() OVER(order by ID) as RowNum,
		f.RusF + ' ' + i.RusI + ' ' + o.RusO,
		p.Sex,
		p.INN,
		p.Birthdate
	from
		dbo.Persons1 p
		inner join dbo.F f on f.FID = p.FID
		inner join dbo.I i on i.IID = p.IID
		inner join dbo.O o on o.OID = p.OID
	where
		(f.RusF like @F and i.RusI like @I and o.RusO like @O) 
		or
		(f.UkrF like @F and i.UkrI like @I and o.UkrO like @O)

--	COMMIT TRANSACTION;
	RETURN @@ERROR
END
Это тестовая функция. А в рабочей, случайно, не нужно окно вывода?
20 май 09, 11:09    [7202443]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
sp
Member

Откуда:
Сообщений: 3947
1 - зачем Distinct ? - найдуться как бы сказать - все лица с такими ФИО - они не дубликаты - ищем то по Persons - откуда там дубликаты?

2 - я тоже так попробовал переделать запрос - но увы он тормозит (

3 - чем транзакция не угодила? )
21 май 09, 03:33    [7206973]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
sp
Member

Откуда:
Сообщений: 3947
ALTER PROCEDURE [dbo].[GetGrid]
	@PageNo int = 1,
	@PageSize int = 50
AS
BEGIN
	SET NOCOUNT ON;
	BEGIN TRANSACTION;


	declare 
		@PageCount int,
		@RecordCount bigint,
		@RowFrom bigint = @PageSize*(@PageNo-1),
		@RowTo bigint = @PageSize*@PageNo
	

	select
		@RecordCount = rows
	from
		dbo.sysindexes
	where
		id =Object_ID('dbo.Persons') and indid < 2;

	select 
		f.RusF,
		i.RusI,
		o.RusO
	from
		(select
			ID,
			FID,
			IID,
			OID,
			ROW_NUMBER() OVER(order by ID) as RowNum
		from
			dbo.Persons1
		) as Tmp
		inner join dbo.F f on f.FID = Tmp.FID
		inner join dbo.I i on i.IID = Tmp.IID
		inner join dbo.O o on o.OID = Tmp.OID
	where
		Tmp.RowNum BETWEEN @RowFrom AND @RowTo

	COMMIT TRANSACTION;
	_exit:	
	RETURN @@ERROR
END
21 май 09, 03:36    [7206975]     Ответить | Цитировать Сообщить модератору
 Re: Что лучше: индекс по столбцу или создание справочника?  [new]
ветерочек
Member

Откуда: СПБ
Сообщений: 153
sp

3 - чем транзакция не угодила? )

а зачем здесь транзакция?

и если уж описывать её то
SET XACT_ABORT ON -- ну или проверять результат каждой команды или BEGIN TRY...

DECLARE		@Tran	INT


SELECT	@Tran = @@TRANCOUNT
IF @Tran = 0
	BEGIN TRANSACTION
....
IF @Tran = 0	
	COMMIT TRANSACTION 
как то так
21 май 09, 07:42    [7207052]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 [4] 5   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить