我有一个表,其中的产品由一个标识码定义,标识码以数字开头,以字母结尾,例如
1A
,
3B
7C
查询用一个
PIVOT
SELECT * FROM MyTable
PIVOT ( COUNT(Product) FOR ProductName IN (&product_statement) )
其中替换变量
product_statement
How do I set LINESIZE and PAGESIZE with a substitution variable?
. 这是一个具有代表性的结果:
NAME | A1 | B3 | C7
Product A| 1 | 2 | 1
Product B| 3 | 1 | 2
&column_statement
看起来是这样的(每行之间用
CHR(10)
):
COLUMN A1 TEMP FORMAT A3 HEADING â1Aâ
COLUMN B3 TEMP FORMAT A3 HEADING â3Bâ
COLUMN C7 TEMP FORMAT A3 HEADING â7Câ
我的想法是,我可以在SQL*Plus中执行以下操作:
&column_statement
SELECT * FROM MyTable
PIVOT ( COUNT(Product) FOR ProductName IN (&product_statement) )
/
但它给了我以下信息:
SP2-0734: unknown command beginning â&column_stâ¦â â rest of line ignored.
NAME | A1 | B3 | C7
Product A| 1 | 2 | 1
Product B| 3 | 1 | 2
如何动态设置列标题?