如何通过phpMyAdmin查询WordPress中的法语教师用户?
正确的SQL查询语句:获取注册为法语教师的WordPress用户
要同时筛选具备「教师权限」和「教授法语」两个条件的用户,你需要利用WordPress用户元数据表(wp_usermeta)的结构特性——每个用户的不同元数据存储在单独行中,所以得通过两次表关联来同时匹配两个元键条件。
下面是可以直接在phpMyAdmin中执行的SQL语句:
SELECT u.* FROM wp_users u INNER JOIN wp_usermeta um_cap ON u.ID = um_cap.user_id INNER JOIN wp_usermeta um_lang ON u.ID = um_lang.user_id WHERE -- 匹配教师权限的元键和值 um_cap.meta_key = 'wp_capabilities' AND um_cap.meta_value = 'a:1:{s:16:"cliente_profesor";b:1;}' -- 匹配教授法语的元键和值 AND um_lang.meta_key = 'idioma_registro' AND um_lang.meta_value = '2';
关键说明:
- 表前缀替换:如果你的WordPress站点用了自定义表前缀(不是默认的
wp_),请把语句里的wp_users和wp_usermeta换成你实际的前缀(比如myblog_users)。 - 精确匹配的重要性:
wp_capabilities的元值是序列化后的字符串,必须和数据库中存储的内容完全一致才能匹配成功。要是遇到序列化字符串长度不一致导致匹配失败的情况,可以改用模糊匹配(但精确匹配更可靠):AND um_cap.meta_value LIKE '%cliente_profesor%' - 自定义返回字段:如果不需要用户的所有信息,可把
u.*替换成你需要的字段,比如u.ID, u.user_login, u.user_email。
内容的提问来源于stack exchange,提问作者Iñaki
相关产品推荐
相关产品推荐

