我有一個有多個用戶的項目。有兩種用戶類型:訂購人員和出價人員。MySQL/Java - 我怎樣才能做這個SELECT語句?
當人誰命令發佈。它會反映到BIDDERS帳戶。我想要的是這樣的,當投標者沒有出價時,所有可用的出價訂單都會出現在他的賬戶中。我有兩個表:訂單和BIDS
Orders表:
OrderID|Item | OrderStatus|
1 |Shoes | On-Bidding |
2 |Bag | On-Bidding |
3 |Shirt | On-Bidding |
BIDS表:
BidID | BidCost | BidStatus |BidderID | OrderID |
1 | $100 | Waiting | 2 | 2 |
2 | $200 | Waiting | 1 | 2 |
,我想用JAVA顯示該表是這樣的:
將出現給用戶的AVAILABLE FOR BID表格:
對於投標人ID 2(他吩咐的袋子所以BidCost列將參加):
Order ID| Item | BidCost |
2 | Bag | $100 |
1 | Shoes | NULL |
3 | Shirt | NULL |
對於投標人ID 1(他還出價壞$ 200)
Order ID| Item | BidCost |
2 | Bag | $200 |
1 | Shoes | NULL |
3 | Shirt | NULL |
對於投標人ID 3(他沒有任何出價)
Order ID| Item | BidCost |
2 | Bag | NULL |
1 | Shoes | NULL |
3 | Shirt | NULL |
我所做的只是選擇所有與ON投標狀況,並與BID表加入它的BidCos噸。但每次我都這樣做。如果某人已經爲某件物品競標並且另一個用戶尚未競標,則競標價格不會顯示爲空。其他用戶的出價將被加入。這樣用戶就會看到其他用戶的出價。
我該如何使用MySQL和JAVA來做到這一點?
我的查詢:
SELECT *
FROM orders T1
INNER JOIN
SELECT bidcost
FROM bids T2
ON T1.ID=T2.ID
WHERE orderstatus=ON-BIDDING
能否請你解釋一下你要存檔的東西。我無法通過你的解釋得到它 – ZeusNet
請具體說一下,說你想要什麼?如果你想讓null值出現在resultset中,只需使用OUTER JOIN。 –
@ZeusNet我想要的是,當投標人沒有出價我想讓他們顯示所有投標訂單,但出價成本只是NULL。如果他爲了某件事而投標,那麼投標費現在將顯示,但僅針對特定投標者。 – Lester