gpt4 book ai didi

mysql - 在另一个查询中使用查询结果

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

我正在使用 Wordpress 和插件 WPForms,它将表单条目存储在我的数据库中,如下所示:

(对我来说,这似乎不是最合乎逻辑/最好的数据库设计,但我别无选择)。

database

考虑上表。我需要选择 meta_value 包含单词“Houd”的行的条目 ID。

我写了这个查询,效果很好:

SELECT entry_id 
AS entries
FROM `wp_wpforms_entrymeta`
WHERE `meta_value`
LIKE '%Houd%'

现在,我需要选择获取电子邮件地址(entries_for_wpforms_field_id_8)。其中entry_id 等于上面查询获取的id 之一。

SELECT meta_value 
FROM `wp_wpforms_entrymeta`
WHERE `meta_key` = 'entries_for_wpforms_field_id_8'
AND `entry_id` = <result of other query>;

如何在另一个查询的 where 中使用前一个查询的 ID 列表?

我尝试使用交叉连接,如下所示:

SELECT entry_id 
AS entries
FROM `wp_wpforms_entrymeta`
WHERE `meta_value`
LIKE '%Houd%'
CROSS JOIN (
SELECT `meta_value`
FROM `wp_wpforms_entrymeta`
WHERE `meta_key` = 'entries_for_wpforms_field_id_8'
);

它导致了语法错误:

Error in used syntax near 'CROSS JOIN (SELECT meta_value FROM wp_wpforms_entrymeta WHER' in line 6.

最佳答案

您可以使用存在

SELECT `meta_value`
FROM `wp_wpforms_entrymeta` q
WHERE `meta_key` = 'entries_for_wpforms_field_id_8' and exists (
SELECT 1
FROM `wp_wpforms_entrymeta` qin
WHERE `meta_value` LIKE '%Houd%' and q.entry_id = qin.entry_id
)

关于mysql - 在另一个查询中使用查询结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54353498/

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