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

Откуда:
Сообщений: 331
Здравствуйте!

Запрос:
SELECT Field1, Field2,
		NewField1 = 5,
		NewField2 = CASE WHEN Field1 > 2010 THEN NewField1 - 1 ELSE 0
FROM dbo.MyTable


Получаю:
Неправильный синтаксис около ключевого слова "FROM".

Подскажите, пожалуйста, как можно переписать запрос, чтобы использовать NewField1 для вычисления NewField2?
13 май 15, 11:28    [17632913]     Ответить | Цитировать Сообщить модератору
 Re: Неправильный синтаксис около ключевого слова "FROM"  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
alexFV
Здравствуйте!

Запрос:
SELECT Field1, Field2,
		NewField1 = 5,
		NewField2 = CASE WHEN Field1 > 2010 THEN NewField1 - 1 ELSE 0 END
FROM dbo.MyTable


Получаю:
Неправильный синтаксис около ключевого слова "FROM".

Подскажите, пожалуйста, как можно переписать запрос, чтобы использовать NewField1 для вычисления NewField2?


а так?

CASE WHEN Field1 > 2010 THEN NewField1 - 1 ELSE 0 END
13 май 15, 11:30    [17632925]     Ответить | Цитировать Сообщить модератору
 Re: Неправильный синтаксис около ключевого слова "FROM"  [new]
Akina
Member

Откуда: Зеленоград, Москва, Россия
Сообщений: 20607
Winnipuh
а так?

Будет Invalid column name 'NewField1'.

SELECT Field1, Field2,
		5 AS NewField1,
		CASE WHEN Field1 > 2010 THEN 4 ELSE 0 END AS NewField2 
FROM dbo.MyTable
13 май 15, 11:38    [17632977]     Ответить | Цитировать Сообщить модератору
 Re: Неправильный синтаксис около ключевого слова "FROM"  [new]
AlanDenton
Member [скрыт]

Откуда:
Сообщений: 1004
SELECT
	Field1,
	Field2,
	NewField1,
	NewField2 =
		CASE
			WHEN Field1 > 2010 THEN NewField1 - 1
			ELSE 0
		END
FROM (
	SELECT *, NewField1 = 5
	FROM dbo.MyTable
) t
13 май 15, 11:53    [17633061]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить