假設我有一個表STUDENT
與列包括ID
,name
,email
和advisorID
。我有第二個表ADVISOR
與字段包括ID
和name
。 STUDENT.AdvisorID
是一個外鍵。插入學生時,您必須有一個指向ADVISOR
的鍵。INSERT INTO ... SELECT ... FROM ...在哪裏工作?
但是,從應用程序中插入學生時,只有名稱爲ADVISOR
。換句話說,您的字符串中包含特定學生的姓名和電子郵件,以及顧問的姓名,但不包含顧問ID。
不知何故,我不能讓我的頭纏着如何做到這一點。我知道這是一種常見的情況,我甚至在stackoverflow上發現了一個或兩個類似的問題。我知道我們正在討論INSERT INTO ... SELECT ... FROM .. WHERE。我假設WHERE子句是advisor.name ='anAdvisorName',但我正在努力解決一些插入的信息來自表格,而另一些則不是。 (關於這種陳述的討論似乎集中於插入所有數據的實例來自第二個表格。這不是我所說的。)
p.s.爲簡單起見,請不要擔心重複的條目,多個顧問具有相同的名稱,等
這是有幫助的。我一直在想SELECT語句,在這種情況下,總是涉及到「選擇」某些東西(來自另一個表)。我不知道可以直接在SELECT語句中包含字段值。它仍然有點違反直覺,但真的很高興知道。謝謝。 –