0
试图检索所有user_id的那些user_id符合3条件。WordPress的Usermeta选择多个键和值
我的代码是
$sql = "
SELECT user_id
FROM {$wpdb->usermeta}
WHERE (({$wpdb->usermeta}.meta_key = 'job_title' AND {$wpdb-
>usermeta}.meta_value = '".$job_title."') OR
({$wpdb->usermeta}.meta_key = 'pmpro_bstate' AND {$wpdb-
>usermeta}.meta_value = '".$state."') OR
({$wpdb->usermeta}.meta_key = 'pmpro_baddress2' AND {$wpdb-
>usermeta}.meta_value = '".$suburb."'))
GROUP BY
user_id
HAVING
COUNT(DISTINCT meta_key)=3";
较低()所需要的价值和变量来准确地比较?
是否有更高效的方式来执行此查询?
干杯
是什么让INNER JOIN更好地使用?并且还要感谢你 – David
每个连接都会创建一个更小的数据集,而且处理速度更快(并且MySQL服务器优化处理连接的方式比其他处理多个表的方法更好,因此它比其他方法具有更高的性能优势) 是连接速度较慢的情况(尤其是如果将LEFT和INNER混合在一起),但在这种情况下,读取查询和基于数据处理的速度要快得多,更简单。 –