Добавить дополнительный столбец во временную таблицу на основе предложения where - PullRequest
0 голосов
/ 09 марта 2020

У меня есть три таблицы без внешних ключей между ними. Мне нужно получить count(*) из всех этих 3 таблиц. Я использую union между этими таблицами и могу получить вывод, как показано ниже.

Output:
10
20
15

Однако мне нужно добавить дополнительный столбец рядом с этими строками, указав имена таблиц или LineOfBusiness. Может ли кто-нибудь помочь мне достичь этого.

Expected Output:
10    Customer
20    Provider
15    Merchant

1 Ответ

0 голосов
/ 09 марта 2020

много недостающей информации, поэтому я собираюсь go с тем, что вы предоставили; короче говоря, то, что вы спрашиваете, очень просто. вам просто нужно просто ввести имя таблицы в оператор выбора следующим образом:

select count(*) as Total, 'RDC' as TableName
from DL_5000_5002 as RDC
where RDC.CallStatusZone1 in ('P')

union all

select count(*) as Total, 'U' as TableName 
from DL_5000_5003 as U 
WHERE U.CallStatusZone1 in ('P') 

union all

select count(*) as Total, 'PM' as TableName
from DL_5005_5005 AS PM 
where PM.CallStatusZone1 in ('P') 

union all

select count(*) as Total, 'PP' as TableName
from DL_5005_5006 AS PP 
where PP.CallStatusZone1 in ('P')

сейчас, если вы хотите динамически извлекать эти имена таблиц в другой столбец или какое-то другое значение в зависимости от условий, тогда это Вся другая история.

набор результатов будет следующим:

Total       TableName
----------  ----------
1835        RDC
0           U
0           PM
0           PP
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...