C# 如何更改SQL表中的行和列
SQL表的结果如下C# 如何更改SQL表中的行和列,c#,sql,.net,C#,Sql,.net,SQL表的结果如下 InvoiceId Tax1 Tax1value Tax2 Tax2Value Tax3 Tax3Value 10 GST 2.0 PST 2.8 GRT 3.1 查询以获得上述结果 SELECT InvoiceId,Tax1,Tax1value,Tax2,Tax2value,Tax3,Tax3Value FROM Invoice WHERE InvoicId=10 现在,我需要为同一个发票表输出类似Blow
InvoiceId Tax1 Tax1value Tax2 Tax2Value Tax3 Tax3Value
10 GST 2.0 PST 2.8 GRT 3.1
查询以获得上述结果
SELECT InvoiceId,Tax1,Tax1value,Tax2,Tax2value,Tax3,Tax3Value
FROM Invoice
WHERE InvoicId=10
现在,我需要为同一个发票表输出类似Blow的表输出
GST PST GRT
2.0 2.8 3.1
如何得到这样的结果
SELECT Tax1value AS GST, Tax2value AS PST, Tax3Value AS GRT
FROM Invoice
WHERE InvoiceId = 10
从
关键字AS用于为列或表指定别名
结果将是
| GST | PST | GRT |
|-----|-----|-----|
| 2 | 3 | 3 |
这里有一个。看看这个,也许对你有用
适用于您的案例如下:
SELECT
invoiceid,
MAX(CASE WHEN (tax1= 'GST') THEN tax1value ELSE NULL END) AS GST,
MAX(CASE WHEN (tax2 = 'PST') THEN tax2value ELSE NULL END) AS PST,
MAX(CASE WHEN (tax3 = 'GRT') THEN tax3value ELSE NULL END) AS GRT
FROM
invoice
GROUP BY invoiceid
ORDER BY invoiceid
Gonul我不需要像Tax1value一样的静态Asign值作为GST。我需要动态。@Gurunahan您想在sql查询工作时更改列名吗?Gonul我需要运行此查询条件,如InvoiceId=56GST、PST、GRT或动态值,然后我如何使用它..?您必须知道这些值。套用链接的答案问题,如果可能值的数量未知,则需要在循环中动态构建SQL语句。那是你的问题吗?