php – 在WordPress的自定义表中是否有LEFT JOIN的替代方案?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php – 在WordPress的自定义表中是否有LEFT JOIN的替代方案?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1243字,纯文字阅读大概需要2分钟。
内容图文
我在WordPress数据库中有两个自定义表.
table1:
id | title | etc
table2:
id | table1_id | title | source | etc
我有这个左连接工作完美:
select p.title as ptitle, e.id, e.title, e.source, e.etc
FROM table2 AS e
LEFT JOIN table1 AS p
ON p.id = e.table1_id
where e.table1_id = 1
返回这个:
ptitle1 | id1 |title1 | source1 | etc1
ptitle1 | id2 |title2 | source2 | etc2
ptitle1 | id3 |title3 | source3 | etc3
有没有办法省略如此多的ptitle重复?像这样的东西:
ptitle1 | { (id1 |title1 | source1 | etc1), (id2 |title2 | source2 | etc2), (id3...) }
ptitle2 | { null }
解决方法:
更新v.2
我已经更改了查询以反映LEFT JOIN顺序的变化以及显示对象{ptitle,array(null)}情况 – 您需要的数据位于new_col列中:
select
p.title as ptitle,
CONCAT('object { ', p.title, ', array( ', IFNULL(GROUP_CONCAT(CONCAT('array(', e.id, ' | ', e.title, ' | ', e.source, ' | ', e.etc, ')') SEPARATOR ', '), 'null'), ' ) }') AS new_col
FROM
table1 AS p
LEFT JOIN table2 AS e
ON p.id = e.table1_id
where
p.id = 1
GROUP BY
p.title
响应你的评论,new_col是一个字符串,我认为你需要它在这个表单中,因为你将在这个文本上应用一个解析器来解释它并为你返回适当的对象.
对于这种情况,我认为你必须更密切地描述情况,因为你需要这种特定形式的结果的确切原因可能在wordpress api中有某种例外用法 – 我不确定这是100%.
内容总结
以上是互联网集市为您收集整理的php – 在WordPress的自定义表中是否有LEFT JOIN的替代方案?全部内容,希望文章能够帮你解决php – 在WordPress的自定义表中是否有LEFT JOIN的替代方案?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。