用于排序wordpress用户元数据的MYSQL查询
您好,我正在尝试对wordpress usermeta数据库进行查询,以获取所有分配了自定义meta_名称和值的用户。自定义名称/值是一个分数(整数)。我需要带回得分最高的用户,并将查询限制为5个结果 我有一份工作报表,但它不想对它们进行适当排序用于排序wordpress用户元数据的MYSQL查询,mysql,wordpress,sorting,metadata,Mysql,Wordpress,Sorting,Metadata,您好,我正在尝试对wordpress usermeta数据库进行查询,以获取所有分配了自定义meta_名称和值的用户。自定义名称/值是一个分数(整数)。我需要带回得分最高的用户,并将查询限制为5个结果 我有一份工作报表,但它不想对它们进行适当排序 $gather_top_users = "SELECT * FROM ".$wpdb->prefix."usermeta WHERE meta_key='points' ORDER BY meta_value DESC LIMIT 5 "; 你
$gather_top_users = "SELECT * FROM ".$wpdb->prefix."usermeta WHERE meta_key='points' ORDER BY meta_value DESC LIMIT 5 ";
你知道为什么不能在数组中正确排序吗?你可能想先把它转换成一个整数,即
ORDER BY CAST(meta_value AS SIGNED) DESC
请参见嗨@esten: WordPress“
meta\u值
字段是longtext
,因此除非将其转换为一,否则它不会按数字排序,因此请通过以下方式更改顺序:
ORDER BY meta_value DESC
为此:
ORDER BY CONVERT(meta_value,UNSIGNED) DESC
希望这有帮助
-迈克
另外,下次你需要WordPress的帮助时,你可能想查看StackOverflow的姐妹网站。很多WordPress爱好者都在现场回答你的WordPress问题