使用PHP PDO将同一mysql列中的值打印到多个列中
我正在尝试输出一个表,其中包含我需要从产品中获得的所有内容,以显示在网页中,然后在其他地方的另一个表中重新组织以供参考 我有我的_帖子,我的_邮件表格 在my_posts表中,我有post_类型,它是“产品”,还有post_标题,它是产品的名称。我还拥有产品的ID 然后我有另一个表我的邮戳,它在同一列我的邮戳.meta\u key中有两个值,分别是“\u sku”和常规价格” 我做了一个查询,可以打印如下内容: 查询:使用PHP PDO将同一mysql列中的值打印到多个列中,php,mysql,pdo,Php,Mysql,Pdo,我正在尝试输出一个表,其中包含我需要从产品中获得的所有内容,以显示在网页中,然后在其他地方的另一个表中重新组织以供参考 我有我的_帖子,我的_邮件表格 在my_posts表中,我有post_类型,它是“产品”,还有post_标题,它是产品的名称。我还拥有产品的ID 然后我有另一个表我的邮戳,它在同一列我的邮戳.meta\u key中有两个值,分别是“\u sku”和常规价格” 我做了一个查询,可以打印如下内容: 查询: SELECT my_posts.post_title, my_
SELECT my_posts.post_title,
my_posts.post_type,
my_posts.ID,
GROUP_CONCAT(my_postmeta.meta_value)
FROM my_posts
INNER JOIN
my_postmeta
ON
my_posts.ID=my_postmeta.post_id
WHERE
my_posts.post_type
LIKE 'product'
AND
my_postmeta.meta_key IN ('_sku', '_regular_price')
GROUP BY
my_posts.post_title
但我想在不同的列中分隔值“\u sku”、“\u常规价格”。
像这样:
可以这样做吗?你应该在我的邮件上使用两个连接,而不是组连接
SELECT t1.post_title,
t1.post_type,
t1.ID,
m1.meta_value as regular_price,
m2.meta_value as sku,
FROM my_posts t1
INNER JOIN my_postmeta m1 ON t1.ID=m1.post_id and m1.meta_key= '_regular_price'
INNER JOIN my_postmeta m2 ON t1.ID=m2.post_id and m2.meta_key= '_sku'
WHERE t1.post_type LIKE 'product'
感谢您的帮助。经过几次修改后,它工作正常:)。代码:选择my_posts.post_title、my_posts.post_type、my_posts.ID、m1.meta_value作为价格,m2.meta_值作为sku从my_posts内部加入my_Posteta作为m1在my_posts上。ID=m1.post_ID和m1.meta_key=''常规价格'内部加入my_Posteta作为m2在my_posts上。ID=m2.post_ID和m2.meta_key=''其中my_posts.post的sku类型像'product'ORDER BY
sku
ASC');