Как я могу выводить данные таблицы (несколько строк) в виде нескольких строк конкатенированных строк

Я пытаюсь взять данные таблицы, построенные из оператора select, используя 2 таблицы и группу по..., а затем вывести каждую строку данных в конкатенированный текст с одной строкой.

Я возился с попыткой DECLARE, SET и печатать как строку concat.

use ap;

SELECT v.vendorid as 'VendorID', count(i.invoiceid) as 'Invoice Count', 
sum(i.invoicetotal) as 'Invoice Total' 
FROM vendors v
JOIN invoices i on i.vendorid = v.vendorid
GROUP BY v.vendorid

пытаюсь вывести как...

VendorID = 34 Количество счетов 2 Всего счетов = 1200,12

ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
2
0
33
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Просто объедините его в строку. Вам просто нужно преобразовать числовые значения в VARCHAR.

select 'VendorID = ' + CAST(v.vendorid AS VARCHAR(10)) + ' Count ' + CAST(count(i.invoiceid) AS VARCHAR(10)) +
    ' Invoice Totals = ' + FORMAT(sum(i.invoicetotal), 'c2')
from vendors v JOIN invoices i on i.vendorid = v.vendorid 
group by v.vendorid

С этими примерными данными:

create table vendors (vendorid int)
create table invoices (vendorid int, invoiceid int, invoicetotal money)

insert into vendors values (34)
insert into invoices values (34, 1, 1000), (34, 2, 200.12)

Возвращает:

VendorID = 34 Count 2 Invoice Totals = $1,200.12

Это сработало отлично ... Я наверняка переосмыслил это. Спасибо.

Nate E. 16.05.2019 02:28

Другие вопросы по теме