1

データベース内のテーブルを結合するのに問題があります。例を特定の順序で表示したいと考えています。

テーブル:product

product_id product_price product_qty
1          5.25          100

テーブル:product_detail

product_id product_name product_generic_name
1          Alcohol      Isoprophyl Alcohol

そして、JOININGの結果を

product_id product_name product_generic_name product_price product_qty
1          Alcohol      Isoprophyl Alchohol  5.25          100

私の失敗したコードは次のとおりです。

SELECT `product_detail`.`product_name`,`product_detail`.`product_name`,`product_detail`.`product_generic_name` 
FROM `product_detail`
UNION
SELECT * FROM `product`

しかし、結果は私が必要とするものではありません.行だけを列に追加することはありません. この問題を解決する方法についてアドバイスをお願いします。

4

1 に答える 1

1
SELECT p.product_id,
       product_name ,
       product_detail,
       product_generic_name ,
       product_price, 
       product_qty
FROM product as p
       inner join product_detail as pd on p.id = pd.id

テーブルを結合する方法については、 MySQL リファレンス マニュアルと同じくらい簡単なので、いくつかの mysql チュートリアルを読みたいと思うかもしれません。

あなたのコメントに基づいて、ここで試す別のオプションがあります:

Select * from
         (SELECT p.product_id,
                 product_name ,
                 product_detail,
                 product_generic_name ,
                 product_price, 
                 product_qty
         FROM product as p) as newTable

または、何か他のものが必要な場合は、一時テーブルを試すこともできます。

create temporary table new_table
SELECT p.product_id,
                 product_name ,
                 product_detail,
                 product_generic_name ,
                 product_price, 
                 product_qty
         FROM product as p

次に、同じスクリプトで、またはそれを呼び出して、次のことを試すことができます。

select * from new_table

于 2012-06-04T00:40:13.590 に答える