CONCAT_WS 在 CREATE TABLE 语句中创建 PRIMARY KEY 的三个字段
CONCAT_WS Three Fields to Create PRIMARY KEY in CREATE TABLE Statement
我正在为相当大的 table 编写 CREATE TABLE
语句,它将通过 .csv
文件加载。
我需要通过将三个字段连接在一起来创建 PRIMARY KEY
:
STORE_NBR
CONTROL_NBR
LINE_NBR
并将新的 created/named 字段附加到每条记录的开头。
这在 CREATE TABLE
语句中可能吗?或者我必须在事后使用 APPEND
?
我该怎么做?
编辑 ----- 2016 年 3 月 21 日
我仍然被告知我应该能够在创建 table 本身时连接三个字段,即 -
CREATE TABLE Mistints(
CONCAT(storeNbr,controlNbr,lineNbr) AS pKey,
storeNbr INT,
controlNbr INT,
lineNbr INT,
salesNbr VARCHAR(15) etc etc
但是我在尝试这样做时遇到了错误。我的主管希望将该连接字段附加到每条记录的开头,并将其作为主键。有没有办法在 Create Table 语句中这样做?或者我必须在事后进行更新吗?或者在我加载 table(通过 .csv 文件)时这样做?
可以通过 CREATE TABLE
在 table 定义的末尾添加以下行:
CREATE TABLE TAB_NAME(
STORE_NBR [data type]([size]) [column constraint],
CONTROL_NBR [data type]([size]) [column constraint],
LINE_NBR [data type]([size]) [column constraint],
.
.
.
PRIMARY KEY (STORE_NBR, CONTROL_NBR, LINE_NBR)
);
我正在为相当大的 table 编写 CREATE TABLE
语句,它将通过 .csv
文件加载。
我需要通过将三个字段连接在一起来创建 PRIMARY KEY
:
STORE_NBR
CONTROL_NBR
LINE_NBR
并将新的 created/named 字段附加到每条记录的开头。
这在 CREATE TABLE
语句中可能吗?或者我必须在事后使用 APPEND
?
我该怎么做?
编辑 ----- 2016 年 3 月 21 日
我仍然被告知我应该能够在创建 table 本身时连接三个字段,即 -
CREATE TABLE Mistints(
CONCAT(storeNbr,controlNbr,lineNbr) AS pKey,
storeNbr INT,
controlNbr INT,
lineNbr INT,
salesNbr VARCHAR(15) etc etc
但是我在尝试这样做时遇到了错误。我的主管希望将该连接字段附加到每条记录的开头,并将其作为主键。有没有办法在 Create Table 语句中这样做?或者我必须在事后进行更新吗?或者在我加载 table(通过 .csv 文件)时这样做?
可以通过 CREATE TABLE
在 table 定义的末尾添加以下行:
CREATE TABLE TAB_NAME(
STORE_NBR [data type]([size]) [column constraint],
CONTROL_NBR [data type]([size]) [column constraint],
LINE_NBR [data type]([size]) [column constraint],
.
.
.
PRIMARY KEY (STORE_NBR, CONTROL_NBR, LINE_NBR)
);