Mysql
如何編寫查詢以獲得確切的結果
我對用 PHP 編寫查詢感到困惑,我想:
1. SELECT RollNumber FROM student WHERE ProgramID= ? 2. SELECT DSID FROM datesheet WHERE CourseCode = ? 3. INSERT INTO result (DSID, RollNumber) VALUES (both queried above)
我已經嘗試過使用 HTML 動態表,但仍然無法獲得我想要的確切結果。
還嘗試使用我從 stackoverflow 的文章中看到的這段程式碼,但沒有任何幫助。
INSERT INTO result (DSID, RollNumber) VALUES ( ( SELECT RollNumber FROM student WHERE ProgramID= ? ), ( SELECT DSID FROM datesheet WHERE CourseCode = ? ) );
經過一番研究,我能夠使用此查詢解決我的問題:-
INSERT INTO result (DSID, RollNumber) SELECT datesheet.DSID, student.RollNumber FROM datesheet, student WHERE datesheet.CourseCode='Course Code Here' AND student.ProgramID='Class Here';
INSERT INTO result (DSIS, RollNumber) VALUES ( ( SELECT RollNumber FROM student WHERE ProgramID= ? ), ( SELECT DSID FROM datesheet WHERE CourseCode = ? ) );
SELECT
幾乎任何需要值的地方都可以使用括號。(如果每個表中有不止一行,則此解決方案和 Ahmed 的解決方案都會出現問題。)添加
LIMIT 1
到每個子查詢可能就足夠了。