假設我有這些表,從中我需要在瀏覽器中顯示的搜索結果:將多個結果組合爲單個字段的子查詢?
Table: Containers
id | name
1 Big Box
2 Grocery Bag
3 Envelope
4 Zip Lock
Table: Sale
id | date | containerid
1 20100101 1
2 20100102 2
3 20091201 3
4 20091115 4
Table: Items
id | name | saleid
1 Barbie Doll 1
2 Coin 3
3 Pop-Top 4
4 Barbie Doll 2
5 Coin 4
我需要輸出,看起來像這樣:
itemid itemname saleids saledates containerids containertypes
1 Barbie Doll 1,2 20100101,20100102 1,2 Big Box, Grocery Bag
2 Coin 3,4 20091201,20091115 3,4 Envelope, Zip Lock
3 Pop-Top 4 20091115 4 Zip Lock
的重要組成部分,是每個項目類型只在屏幕上返回一個記錄/行。過去,我通過返回多行相同的項目並使用腳本語言來限制輸出來完成此任務。但是,這使得ui過於複雜和糟糕。所以,我希望我可以讓數據庫只顯示與顯示行數一樣多的記錄。
這個例子可能有點極端,因爲從物品到達貨櫃(通過銷售表)需要2個連接。
我會很高興的只是輸出這樣一個例子查詢:
itemid itemname saleids saledates
1 Barbie Doll 1,2 20100101,20100102
2 Coin 3,4 20091201,20091115
3 Pop-Top 4 20091115
我只能在一個子查詢返回一個結果,所以我不知道如何做到這一點。
您正在使用哪種RDBMS? – 2010-06-16 18:27:01