使用wordpress数据库,我们有像wp_options和wp_postmeta这样的表。 这些按主键ID分组,然后是'option_name'和'option_value';
等字段例如,找出三个值,我需要做3个不同的查询。
是否有正确的方法只使用一个查询来完成所有这些操作?
请对此有所了解并分享正确的方法。
SELECT option_value FROM bdlocal_wrdp1.wp_options WHERE option_name='siteurl';
SELECT option_value FROM bdlocal_wrdp1.wp_options WHERE option_name='blogname';
SELECT option_value FROM bdlocal_wrdp1.wp_options WHERE option_name='blogdescription';
(返回example.com,示例博客,这是一个示例博客。)
答案 0 :(得分:7)
SELECT option_name,
option_value
FROM bdlocal_wrdp1.wp_options
WHERE option_name IN ('siteurl', 'blogname', 'blogdescription')
执行此查询后,您将拥有3对option_name + option_value
值。
答案 1 :(得分:3)
你可以为此IN
条款,
SELECT option_value
FROM bdlocal_wrdp1.wp_options
WHERE option_name IN ('siteurl','blogname','blogdescription')
答案 2 :(得分:1)
select (case when option_name='siteurl' then option_value else 0 end ) as 'siteurl',
(case when option_name='blogname' then option_value else 0 end ) as 'blogname',
(case when option_name='blogdescription' then option_value else 0 end ) as 'blogdescription' from bdlocal_wrdp1.wp_options
答案 3 :(得分:0)
您还可以使用 MySQL Union 来实现此功能:
select option_name,option_value from wp_options where option_name='siteurl' UNION ALL
select option_name,option_value from wp_options where option_name='blogname' UNION ALL
select option_name,option_value from wp_options where option_name='blogdescription';
您可以通过一些示例here.
了解有关联盟的更多信息