2

mysql5.1コミュニティバージョンの使用を開始します。

最初に私は...

master_product_table

ID Product_Code Product_Name Product_Details
================================================== ===================
1000001原材料1000001-原材料1
2000002原材料2000002-原材料2
3000003原材料300003-原材料3
4000004原材料4000004-原材料4

ここで、IDフィールドはPK

およびmaster_document

Doc_no Doc_date Doc_type Item_code1 Item_qty1 Item_price1 Item_code2 Item_qty2 Item_price2
================================================== ================================================== =====================
0000012013年1月1日紀元前。2.3 1200 $ 150 3500 $ 800
0000022013年2月1日紀元前。2.7 2 1500 $ 800 4 6000 $ 2500
0000032013年3月1日紀元前。3.0 3 5000 $ 1500 1 12000 $ 8500
0000042013年4月1日紀元前。4.0 4 12000 $ 5000 2750 $ 3000

ここで、Doc_noフィールドはPK

欲しいのはこんな感じ…

Doc_no Doc_date Doc_type Item_details1 Item_qty1 Item_price1 Item_details2 Item_qty2 Item_price2
================================================== ================================================== ================================================== ==
0000012013年1月1日紀元前。2.3000001-原材料1200$150000003-原材料3500$800
0000022013年2月1日紀元前。2.7000002-原材料21500$800000004-原材料46000$ 2500
0000032013年3月1日紀元前。3.0000003-原材料35000$1500000001-原材料112000$ 8500
0000042013年4月1日紀元前。4.0000004-原材料412000$5000000002-原材料2750$3000

これを行う方法についての助けはあなたに役立つでしょう。

4

3 に答える 3

1

初めてSQLFIDDLEを試しまし

30分かかりました

次のSQLフィドルを試してください

SELECT md.Doc_no, md.Doc_date, md.Doc_type, 
       pd1.Product_Details Item_details1, md.Item_qty1, md.Item_price1, 
       pd2.Product_Details Item_details2, md.Item_qty2, md.Item_price2 
FROM master_document md 
INNER JOIN master_product_table pd1 ON md.Item_code1 = pd1.ID 
INNER JOIN master_product_table pd2 ON md.Item_code2 = pd2.ID
order by md.Doc_no
于 2013-01-09T12:34:56.027 に答える
1

これを試して:

SELECT md.Doc_no, md.Doc_date, md.Doc_type, 
       mp1.Product_Details Item_details1, md.Item_qty1, md.Item_price1, 
       mp2.Product_Details Item_details2, md.Item_qty2, md.Item_price2 
FROM master_document md 
INNER JOIN master_product_table mp1 ON md.Item_code1 = mp1.ID 
INNER JOIN master_product_table mp2 ON md.Item_code2 = mp2.ID ;
于 2013-01-09T11:58:17.340 に答える
0

これはSQLに関する非常に基本的な質問です。今あなたに直接的な解決策を与えることは確かに将来あなたを助けないでしょう。

より小さな例を取得して、「SELECT x FROM y WHERE x = w」、および「SELECT x as z FROM y」の使用方法の学習を開始してください(これにより、列xの名前がzに変更されます)

そして、さらに質問がある場合は、ここに追加してください。

楽しむ ;)

于 2013-01-09T11:39:57.290 に答える