powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / IF INSERT после SELECT запроса
7 сообщений из 7, страница 1 из 1
IF INSERT после SELECT запроса
    #39888155
Hopfen_Artur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день. Есть такой результат запроса
id date dataId downtime5B22FE0E-36A5-42AE-A280-93E6D47B4044 2019-11-12 13:09:49.943 583D454E-994A-4E00-909B-E73B4FBB6CC8 193E8FECB-8782-4357-B0FC-75C147594F50 2019-11-12 16:30:27.530 00836B72-187B-48C2-91FE-F67669175FB8 00ADA876A-4C54-4EFB-8D72-62CE5CEE1A3E 2019-11-12 16:30:37.077 734F3CB7-5C01-4FF6-8B9B-3DC0A5077156 04E54A711-2C00-41FB-BC23-B27002F03127 2019-11-12 16:30:23.907 518FC09F-3F19-4124-95D7-73A0DF1E7095 0

Как дописать чтобы если в запросе столбца downtime есть 1, то взять данные столбца и сделать insert в другую таблицу
Код: sql
1.
2.
3.
4.
5.
6.
BEGIN TRANSACTION;
SELECT -- параметры запроса
IF [downtime] =1 -- как то так
 BEGIN INSERT INTO
 END
COMMIT;
...
Рейтинг: 0 / 0
IF INSERT после SELECT запроса
    #39888157
londinium
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hopfen_Artur,
Код: sql
1.
2.
3.
4.
5.
IF EXISTS
(
  SELECT 1 FROM... WHERE DOWNTIME=1
)
INSERT ....


так?
...
Рейтинг: 0 / 0
IF INSERT после SELECT запроса
    #39888158
1C Developer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
INSERT INTO ...
SELECT ... FROM WHERE [downtime] =1 



... - Порядок и количество должно в INSERT и SELECT секциях.
...
Рейтинг: 0 / 0
IF INSERT после SELECT запроса
    #39888162
Hopfen_Artur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема в том что downtime создается так
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
CASE WHEN 
	      DATEADD(SECOND,
	      CASE WHEN 
		      [STD].[CycleNorm] * 3 <= 300 
			  THEN [STD].[CycleNorm] * 3 
			  ELSE 300 END
	   , MAX(RF.Date)) <  GETDATE () 
	   THEN 1 
	   ELSE 0 
	   END AS [downtime]
...
Рейтинг: 0 / 0
IF INSERT после SELECT запроса
    #39888167
Hopfen_Artur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В приницпе понял
Код: sql
1.
2.
3.
4.
SELECT tb1.[downtime] FROM(
SELECT 
) AS tb1
WHERE tb1.[downtime] = 1
...
Рейтинг: 0 / 0
IF INSERT после SELECT запроса
    #39888168
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hopfen_Artur,

почему это проблема?
Напишите having case ... end = 1 после группировки.
...
Рейтинг: 0 / 0
IF INSERT после SELECT запроса
    #39888396
Фотография PsyMisha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hopfen_Artur,

Динамическим SQL.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
DECLARE @SQLCMD AS NVARCHAR(MAX)
DECLARE @tmp_value AS INT
SELECT @tmp_value = [downtime] FROM TABLE WHERE ...


IF @tmp_value = 1
	BEGIN
		SET @SQLCMD = 'INSERT INTO TABLE1'
	END
ELSE
	BEGIN 
		SET @SQLCMD = 'INSERT INTO TABLE2'
	END

PRINT @SQLCMD
EXEC sp_executesql @SQLCMD
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / IF INSERT после SELECT запроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]