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

我希望加入的结果是

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

然后在同一个脚本中,或者无论你怎么称呼它,你都可以尝试:

从 new_table 中选择 *

于 2012-06-04T00:40:13.590 回答