我有3个表格,其值如下所示
**tbl_product**
recID pID price colour
1 BDPLA-0001 1.23 White
2 BDPLA-0002 2.23 Black
3 BDPLA-0003 2.28 Blue
tbl_product_size
recID pID size stock
1 1 2.0cm 10
2 1 3.0cm 20
3 2 2.5cm 30
4 3 3.6cm 40
5 3 3.8cm 50
tbl_order_details
recID pID quantity size
201 BDPLA-0001 5 2.0cm
202 BDPLA-0002 10 2.5cm
tbl_product = t
tbl_product_size = s
tbl_order_details = d
t.recID = s.pID
t.pID = d.pID
我如何组合表格并产生这样的结果
t.pID s.size s.stock d.quantity t.price
BDPLA-0001 2.0cm 10 5 1.23
BDPLA-0001 3.0cm 20 null 1.23
BDPLA-0002 2.5cm 30 10 2.23
BDPLA-0003 3.6cm 40 null 2.28
BDPLA-0003 3.8cm 50 null 2.28
答案 0 :(得分:2)
您可以使用联盟。
select a,b,c from table A
union
select a,b,c from table B;
每个选择中列的数量和类型应该相同。
答案 1 :(得分:0)
您的问题似乎不完整但您可以尝试以下操作,否则这将有助于您了解查询中如何使用多个表。
select t.pID, s.size s.stock d.quantity t.price
from tbl_product t, tbl_product_size s, tbl_order_details d
where t.recID=s.pID and d.pID=t.pID
答案 2 :(得分:0)
这样就可以了解
select t.pID, t.price, s.size, s.stock, d.quantity
from tbl_product t inner join tbl_product_size s on t.recID = s.pID
left outer join tbl_order_details d on t.pID = d.productCode and s.size = d.size;