這個問題在這里已經有了答案: 將 INSERT 與 SELECT 陳述句與自定義值結合使用 1 個回答 昨天關閉。
有可能做這樣的事情嗎?
INSERT INTO homework(teacherId, class, name, dueDate)
VALUES(teacherId, "12A1", "trig", "tomorrow")
teacherID = (
SELECT teacherId
FROM teacherlogins
WHERE teacherid = 5
)
我知道這個查詢是不正確的,但是否可以用另一種方式來做到這一點?
uj5u.com熱心網友回復:
有幾種方法可以做到。一個是在 Barbara 上面的評論中,使用INSERT...SELECT 語法:
INSERT INTO homework(teacherId, class, name, dueDate)
SELECT teacherId, '12A1', 'trig', 'tomorrow'
FROM teacherlogins
WHERE teacherid = 5;
這是另一個使用標量子查詢運算元的方法:
INSERT INTO homework(teacherId, class, name, dueDate)
VALUES((SELECT teacherId FROM teacherlogins WHERE teacherid = 5 LIMIT 1),
'12A1', 'trig', 'tomorrow')
這是另一個使用用戶定義變數和SELECT INTO 語法的例子:
SELECT teacherId INTO @t FROM teacherlogins WHERE teacherid = 5;
INSERT INTO homework(teacherId, class, name, dueDate)
VALUES(@t, '12A1', 'trig', 'tomorrow');
這是另一個::-)
INSERT INTO homework(teacherId, class, name, dueDate)
VALUES(5, '12A1', 'trig', 'tomorrow');
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/385379.html
上一篇:PHP、SQL-插入選擇案例
