gpt4 book ai didi

php - 比较产品 php 脚本

转载 作者:行者123 更新时间:2023-11-29 11:59:04 25 4
gpt4 key购买 nike

mysql> 从 test1.spec_property 中选择 spm_id、spec_value、product_name;

+--------+---------------------+----------------+
| spm_id | spec_value |product_name |
+--------+---------------------+----------------+
| 6 | Yellow Gold |ring1 |
| 7 | 22 |ring1 |
| 7 | 22 |ring2 |
| 7 | 24 |ring3 |
| 11 | girl |ring1 |
+--------+---------------------+----------------+

需要这样的东西

+--------+---------------------+---------------------+---------------------+
| spm_id | col1 | col 2 | col 3 |
+--------+---------------------+---------------------+---------------------+
| | Ring1 | Ring 2 |Ring 3 |
| 6 | Yellow Gold | | |
| 7 | 22 | 22 | 24 |
| 11 | girl | | |
+--------+---------------------+---------------------+---------------------+

实际上我需要在 php 中为上表提供产品比较 php 脚本。主要是在寻找 php 脚本来提供比较产品。

最佳答案

满足您的要求的技术术语是pivot。在纯MySQL 中进行pivot 是一件众所周知的麻烦事。您可以通过多种方式进行查找。

同时,您可以尝试 ( http://sqlfiddle.com/#!9/f1a76/2/0 )

SELECT spm_id, 
GROUP_CONCAT(spec_value ORDER BY spec_value) vals
FROM spec_property
GROUP BY spm_id

这将为您提供一个以逗号分隔的列表,而不是单独的列。但如果您需要将结果集转换为 JSON,那应该是可行的。

如果需要,您甚至可以让 MySQL 为您执行一些 JSON 样式的格式化:这会将列表中的项目放在双引号中。 (http://sqlfiddle.com/#!9/f1a76/4/0)

SELECT spm_id, 
GROUP_CONCAT(CONCAT('"',spec_value,'"') ORDER BY spec_value) vals
FROM spec_property
GROUP BY spm_id

关于php - 比较产品 php 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32681749/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com