2014-02-28 105 views
0

嗯,我在我的db(MATERIALS和INVENTORY)中有兩個表。 我必須選擇一種材料,並獲取其他表格中的細節,然後我必須展示它們。 我不知道這是否是好的,但我對這個查詢嘗試:我如何從兩個不同的表中獲取數據

select* from INVENTARIO whereMATRICULA IN (select FAMMTL_CDG_REGISTRATION from MATERIALS where FAMMTL_CDG_REGISTRATION = #{matricula});

我必須把這樣的結果對一個bean,並顯示它。 可以嗎?

+0

您在這裏缺少空格('where MATRICULA'),但其他情況看起來沒問題。爲什麼不使用JOIN而不是子選擇?此外,你是否得到一個錯誤或只是要求一個SQL代碼審查(在這種情況下,這可能會移動到codereview堆棧)。 –

回答

0

你需要加入他們使用一些共同的專欄(最好是ID)。我想INVENTARIO對材料有一個外鍵。那是對的嗎?在這種情況下,這將是:

select * from INVENTARIO inv, MATERIALS mat on inv.fk = mat.id 

哪裏FK是外鍵材料ID。但是這只是猜測,因爲我們不知道你的表格是怎麼樣的。 這將是一個隱含的「交叉」連接。有關其他可能性,請參見http://en.wikipedia.org/wiki/Join_%28SQL%29

+0

這是我的錯誤,現在我有我的fk材料id。所以它好,謝謝。 – alucabj

相關問題