我有两张桌子, apromotion table
和 a prize table
。
CREATE TABLE PRIZE(
PRIZEID INT NOT NULL PRIMARY KEY,
COST DOUBLE NOT NULL,
PRIZENAME VARCHAR(100) NOT NULL,
)
CREATE TABLE PROMOTION (
PROMOTIONID INTEGER NOT NULL,
LEVEL INTEGER NOT NULL,
AMOUNT NOT NULL,
COST DOUBLE NOT NULL DEFAULT 0,
PRIZENAME VARCHAR(100) NOT NULL DEFAULT ' ',
PRIZEID INTEGER
)
当前prize table
为空,我想将记录从 复制promotion table
到prize table
. 在这样做时,我只想选择那些在两列中具有唯一值的记录,即prizename
和cost
。之后我将删除这些列promotion
。
现在我有以下sql语句
INSERT INTO prize(PRIZEID, COST, PRIZENAME)
SELECT r.PRIZEID, r.COST, r.PRIZENAME
FROM PROMOTION r;
但这会将所有记录插入到prize table
. 我意识到我可以在 select 中使用 distinct 关键字来选择和的唯一实例,cost
但prizename
在我的情况下,prizeid
它将始终是唯一的,并且由于该distinct
关键字适用于 select 子句中的所有列,因此无济于事。
提前致谢!