如何使用表中的数据作为SQL中键值的实体?
我有如下表格: 是否有任何SELECT查询以以下形式显示表如何使用表中的数据作为SQL中键值的实体?,sql,select,Sql,Select,我有如下表格: 是否有任何SELECT查询以以下形式显示表 非常感谢。您可以尝试以下代码: SELECT post_id, (SELECT meta_value from test where meta_key='_total') AS _total, (SELECT meta_value from test where meta_key='_phone') AS _phone, (SELECT meta_value from test where
非常感谢。您可以尝试以下代码:
SELECT post_id,
(SELECT meta_value from test where meta_key='_total') AS _total,
(SELECT meta_value from test where meta_key='_phone') AS _phone,
(SELECT meta_value from test where meta_key='_address') AS _address
FROM test
GROUP BY post_id
更新
由于该表包含更多post_id,请检查以下更新
SELECT post_id,
(SELECT meta_value from test t2 where meta_key='_total' AND t1.post_id=t2.post_id) AS _total,
(SELECT meta_value from test t2 where meta_key='_phone' AND t1.post_id=t2.post_id) AS _phone,
(SELECT meta_value from test t2 where meta_key='_address' AND t1.post_id=t2.post_id) AS _address
FROM test t1
GROUP BY post_id
我认为不需要访问同一个表四次 您可以按如下方式使用
条件聚合
:
SELECT post_id,
max(case when meta_key='_total' then meta_value end) AS _total,
max(case when meta_key='_phone' then meta_value end) AS _phone,
max(case when meta_key='_address' then meta_value end) AS _address
FROM test
GROUP BY post_id
我认为这与jquery没有任何关系。它返回的错误子查询返回的值大于1row@WebDesign,我已更新我的答案。请检查。我想加入并用另一个表输出您的查询,可能吗?非常感谢,我也会检查。