Здравствуйте, skorpk, Вы писали:
S>Надо посмотреть план выполнения и структуру таблицы хорошо бы увидеть.
S>Да и глянуть что делается в данный момент а Activity Monitor
Структуры:
CREATE TABLE [dbo].[Frames](
[id] [bigint] IDENTITY(1,1) NOT NULL,
[UTC_time] [datetime] NOT NULL,
[GoodToMap] [tinyint] NOT NULL CONSTRAINT [DF_Frames_GoodToMap] DEFAULT (0),
CONSTRAINT [PK_Frames] PRIMARY KEY CLUSTERED
(
[id] ASC
) ON [PRIMARY]
) ON [PRIMARY]
CREATE TABLE [dbo].[Science_data](
[id] [bigint] NOT NULL,
[SC2] [binary](32) NOT NULL,
CONSTRAINT [PK_Science_data] PRIMARY KEY CLUSTERED
(
[id] ASC
) ON [PRIMARY]
) ON [PRIMARY]
ALTER TABLE [dbo].[Science_data] WITH NOCHECK ADD CONSTRAINT [FK_Science_data_Frames] FOREIGN KEY([id])
REFERENCES [dbo].[Frames] ([id])
GO
ALTER TABLE [dbo].[Science_data] CHECK CONSTRAINT [FK_Science_data_Frames]
План выполнения — действительно сильно разные — но тут я немножко профан и не до конца могу понимать смысла нарисованного. Если подскажете, возможно ли заставить сервер выполнять 2й запрос так же как 1й, кажется это решит проблемы.
По поводу Activity Monitor — во время выполнения 2го запроса там очень много жизни, но опять же — не до конца понимаю, на что именно обращать внимание (какие столбцы имеет смысл сюда приводить). Наш процесс — 60й.
PS. Пока пост писал — 2й вариант запроса таки выполнился, заняло 8 минут (против 1 секунды)