powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Использовать выходное поле запроса для вычисления другого выходного поля.
5 сообщений из 5, страница 1 из 1
Использовать выходное поле запроса для вычисления другого выходного поля.
    #39686794
Фотография 4d_monster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У MS Access в Jet SQL работает вычисление выходного поля от данных других выходных полей:
Код: sql
1.
SELECT 1 AS A , 2 AS B, A+B AS C;


А SQL server и T-SQL выдают ошибки:
MSSMSMsg 207, Level 16, State 1, Line 1
Недопустимое имя столбца "A".
Msg 207, Level 16, State 1, Line 1
Недопустимое имя столбца "B".
Как это проще обойти ?
...
Рейтинг: 0 / 0
Использовать выходное поле запроса для вычисления другого выходного поля.
    #39686797
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4d_monster,

проще [1] + [2] as [C]
...
Рейтинг: 0 / 0
Использовать выходное поле запроса для вычисления другого выходного поля.
    #39686801
Фотография 4d_monster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а если не 1 и 2, а сложные вычисления и итог не от двух столбцов в 10-ти ?
...
Рейтинг: 0 / 0
Использовать выходное поле запроса для вычисления другого выходного поля.
    #39686805
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4d_monsterа если не 1 и 2, а сложные вычисления и итог не от двух столбцов в 10-ти ?
тогда
Код: sql
1.
2.
;WITH T AS (SELECT 1 AS A , 2 AS B)
SELECT *, [A] + [B] AS [C] FROM T
...
Рейтинг: 0 / 0
Использовать выходное поле запроса для вычисления другого выходного поля.
    #39687030
Владимир Затуливетер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4d_monsterа если не 1 и 2, а сложные вычисления и итог не от двух столбцов в 10-ти ?

Еще вариант с cross apply. ps: лично мне синтаксически больше нравиться.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
select *
from dbo.Table1 t
    cross apply (
        -- сложные вычисления тут
        select 1 as A, 2 as B
    ) c1
    cross apply (
        -- можно еще добавить
        select c1.A + c1.B as C
    ) c2
    cross apply (
        -- и еще
        select c2.С / c1.B as D
    ) c3
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Использовать выходное поле запроса для вычисления другого выходного поля.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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