我已經創建了一個數據庫,我試圖從多個表中提取信息。我期待不超過3個結果,我以15結束!MYSQL查詢問題
在15個結果中,它也複製了數據並且給出了錯誤的數據!
確定這裏是語句升跑
select *
from [Student, Accomadation_Application
where lname = 'Torrance'
and accomodationType = 'flat'
任何幫助將是巨大的不知道如果我提供了足夠的信息..
我已經創建了一個數據庫,我試圖從多個表中提取信息。我期待不超過3個結果,我以15結束!MYSQL查詢問題
在15個結果中,它也複製了數據並且給出了錯誤的數據!
確定這裏是語句升跑
select *
from [Student, Accomadation_Application
where lname = 'Torrance'
and accomodationType = 'flat'
任何幫助將是巨大的不知道如果我提供了足夠的信息..
您需要使用外鍵的兩個表進行連接。像這樣的查詢將爲您提供兩個表中所有行的可能組合。
像Student.key = Accomadation_Application.fk - 或其他方式。
l確實已使用學生表bannerNo中的主鍵將學生表與學生表相關聯。這就是accomadation_application中的FK,它試圖提取只有姓氏的人的記錄,這個人的姓名是瓦隆,但它重複所有3個姓Torrance的姓氏,然後給我其他人的數據,旁邊有託蘭斯的名字? ? –
這張表之間有一些關係嗎? 您應該使用類似
SELECT *
FROM student
INNER JOIN Accomadation_Application ON Accomadation_Application.studentId = student.id
WHERE lname = 'Torrance' and accomodationType = 'flat'
您必須將表格連接在一起。
SELECT * FROM 學生小號 加入accomadation_application一個 上 a.iname = s.iname 其中 s.iname = '託倫斯' 和a.accomodationType = '平'
(語法可能需要轉換,因爲這爲t SQL)
猜測基於你的表可能含有......
SELECT *
FROM Student AS s
JOIN Accomadation_Application AS a ON s.bannerNO = a.bannerNo
WHERE s.lname = 'Torrance' AND a.accomodationType = "flat";
學生表上的bannerNO,fName,lName,DOB,課程Acomadation_Application表包含applicationRef,accomadtionType,durationofStay,applcationDate,bannerNo與bannerNo是fk –
已更新!在我起牀之前,我不應該寫SQL查詢! –
瞭解數據庫模式和內容將有所幫助。 – moonwave99
你有任何獨特的專欄嗎?因爲如果你得到15個結果而不是3個,很可能你的db表沒有'UNIQUE'約束。 – wkoot
我剛剛在表單 –