我所試圖做的是這樣的事情如何從另一個表格和用戶輸入中插入表格?
INSERT INTO BOOKS(borrower_name,isbn) VALUES("Jane",SELECT isbn from TABLE...);
這是不對的明顯。但是我試圖得到一些能夠以這種方式工作的東西(如果有的話)。
我所試圖做的是這樣的事情如何從另一個表格和用戶輸入中插入表格?
INSERT INTO BOOKS(borrower_name,isbn) VALUES("Jane",SELECT isbn from TABLE...);
這是不對的明顯。但是我試圖得到一些能夠以這種方式工作的東西(如果有的話)。
你是非常接近
INSERT INTO books (borrower_name, isbn)
SELECT 'Jane', isbn
FROM table_name
-- WHERE id = ?
您可能需要使用WHERE
條款和適當的條件下(S)
這裏限制從table_name
未來的行數爲SQLFiddle演示
更多了,如果你打算從SELECT
只返回一個標量值(只有一個ISBN),那麼你在第一時間正確,並可能已經使用的語法顯示在你的問題
INSERT INTO books (borrower_name,isbn)
VALUES ('Jane',
(
SELECT isbn
FROM table_name
WHERE id = 1
));
這裏是SQLFiddle演示
INSERT INTO BOOKS(borrower_name,isbn)
SELECT 'Jane', isbn from TABLE
什麼你在做也是正確的,U只錯過()
的select語句:
INSERT INTO BOOKS(borrower_name,isbn) VALUES("Jane",SELECT isbn from TABLE...);
應修改爲:
INSERT INTO BOOKS(borrower_name,isbn) VALUES("Jane",(SELECT isbn from TABLE...));
,它會完全正常工作!這裏是SQLFiddle demo
檢查這個我的答案... 例子: 我有兩個Employee表和客戶端
Insert into Employee (name, city) values((select name from client where id=2),'example');
按照此方法