Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql SQL非规范化,将表列组合到另一个表列_Mysql_Denormalization - Fatal编程技术网

Mysql SQL非规范化,将表列组合到另一个表列

Mysql SQL非规范化,将表列组合到另一个表列,mysql,denormalization,Mysql,Denormalization,我在连接数据库中的表时遇到问题,我想以特定的顺序显示它,示例如下 表:产品 product_id product_price product_qty 1 5.25 100 表:产品详细信息 product_id product_name product_generic_name 1 Alcohol Isoprophyl Alcohol 我希望加入的结果是 product_id product_name product_gener

我在连接数据库中的表时遇到问题,我想以特定的顺序显示它,示例如下

表:
产品

product_id product_price product_qty
1          5.25          100
表:
产品详细信息

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`
但是结果不是我需要的,它不添加列,只添加行。 请给我一些解决这个问题的建议

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教程,因为这可能很简单

根据您的评论,这里有另一个尝试选项:

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
然后,使用相同的脚本或您如何调用它,您可以尝试:

从新表格中选择*

您可能想阅读一些关于如何连接表的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
然后,使用相同的脚本或您如何调用它,您可以尝试:


从新表格中选择*

谢谢你,德雷扎先生,真是帮了大忙!快速问一下,这张桌子的新名字是什么?是table
p
?@anoldgangstah结果将是一个结果集,而不是一个表实体,因此它不会直接有名称。为什么需要一个表名?我需要一个表名,这样,如果我添加了一个产品,它将自动更新,因为我应用了该代码,新产品似乎根本没有显示出来。但是如果我选择
product
它将自动填充,那么在这个新的未知表中我该怎么做呢?@anoldgangstah我有点困惑。你的问题中没有提到添加任何内容?您是想在一个连接的表上进行插入或更新吗?谢谢您,dreza先生,这真是一个很大的帮助!快速问一下,这张桌子的新名字是什么?是table
p
?@anoldgangstah结果将是一个结果集,而不是一个表实体,因此它不会直接有名称。为什么需要一个表名?我需要一个表名,这样,如果我添加了一个产品,它将自动更新,因为我应用了该代码,新产品似乎根本没有显示出来。但是如果我选择
product
它将自动填充,那么在这个新的未知表中我该怎么做呢?@anoldgangstah我有点困惑。你的问题中没有提到添加任何内容?您正在尝试对联接表执行插入或更新吗?