2013-12-12 27 views
0
CREATE TABLE categories 
(
    ID serial PK, 
    description varchar(20) 
); 

CREATE TABLE commissions 
(
    categoryID integer references categories(ID), 
    percent varchar(20) 
); 

我想添加一行到類別的描述是Widgets佣金表,因此佣金是百分之十。假定該類別已經存在於類別表中。使用INSERT查詢和選擇

我想:

INSERT INTO commissions (categoryID, percent) 
VALUES (categoryID, 10) 
SELECT ID FROM categories WHERE description = 'widgets'; 

但是是不正確的,有人可以幫我出如何插入值加上正從另一個表另一個值。

回答

0

在這種情況下,正確的語法是:

INSERT INTO commissions (categoryID, percent) 
SELECT ID, 10 FROM categories WHERE description = 'widgets'; 

當您使用SELECT不要使用VALUES

0
INSERT INTO commissions (categoryID, percent) 

      SELECT ID,10 FROM categories WHERE description = 'widgets' 

關鍵字不能同時做一個插入 - 到 - 選擇操作中使用