Sql 当该列打算包含文本时,数据透视表不起作用&;数值

Sql 当该列打算包含文本时,数据透视表不起作用&;数值,sql,sql-server,Sql,Sql Server,请使用以下代码反映错误: CREATE TABLE TESPVTBL ( Names NVARCHAR(20), Salary INT, Country NVARCHAR(80) ) INSERT INTO TESPVTBL (Names, Salary, Country) VALUES ('Karthick', 15000, '1300029INDIA'), ('BRO1', 15000, '130008INDIA'), ('DHA

请使用以下代码反映错误:

CREATE TABLE TESPVTBL
(
    Names   NVARCHAR(20),
    Salary  INT,
    Country NVARCHAR(80)
)

INSERT INTO TESPVTBL (Names, Salary, Country) 
VALUES ('Karthick', 15000, '1300029INDIA'),
       ('BRO1', 15000, '130008INDIA'),
       ('DHARU', 15000, 'US'),
       ('DHARUBRO', 15000, 'US')

SELECT 
    NAMES, 1300029INDIA, 130008INDIA
FROM 
    TESPVTBL
PIVOT
    (SUM(Salary) 
          FOR Country IN (1300029INDIA, 130008INDIA)) AS PT

有什么办法解决这个问题吗?

使用方括号表示列名:

SELECT 
    NAMES, [1300029INDIA], [130008INDIA]
FROM 
    TESPVTBL
PIVOT
    (SUM(Salary) 
          FOR Country IN ([1300029INDIA], [130008INDIA])) AS PT
输出:


有必要设置一个临时数据透视-为什么?