Wordpress - wpdb 查询未列出与 sql 查询相同的结果
Wordpress - wpdb query does not list same result as sql query
我有一个关于 wpdb 的非常奇怪的问题,这让我很害怕。我的数据库有以下数据:
INSERT INTO `wp_clb_likes` (`id`, `post_id`, `user_ip`, `time`)
VALUES
(5,11511,'::1','2015-01-25 09:23:26'),
(6,11511,'::1','2015-01-25 09:23:34'),
(7,11511,'::1','2015-01-25 09:24:07'),
(8,11511,'::1','2015-01-25 09:24:44'),
(9,11511,'::1','2015-01-25 09:28:53'),
(10,11511,'::1','2015-01-25 09:29:23'),
(11,11511,'::1','2015-01-25 09:31:06'),
(12,11511,'::1','2015-01-25 09:31:30'),
(13,11172,'::1','2015-01-25 09:43:10'),
(14,11511,'::1','2015-01-25 20:23:31'),
(15,11315,'::1','2015-01-25 20:32:01'),
(16,11025,'::1','2015-01-25 20:32:59');
在 WP 中我有查询:
public static function getAllObjects() {
global $wpdb;
global $clb_table;
$sql = $wpdb->get_results("SELECT COUNT(*) as likes, post_id from $clb_table GROUP BY post_id ORDER BY likes DESC", OBJECT_K);
return $sql;
}
我的 var_dump 在前面的 WP 上显示:
array(2) { [9]=> object(stdClass)#4818 (2) { ["likes"]=> string(1) "9" ["post_id"]=> string(5) "11511" } [1]=> object(stdClass)#4817 (2) { ["likes"]=> string(1) "1" ["post_id"]=> string(5) "11172" } }
为什么我只看到 post_id 11511 和 11172 而不是 11315 和 11025?
有人知道原因吗?谢谢!
自己解决了。由于 get_results() 中的 OBJECT_K 设置,该函数不会列出数据库的所有项目...我将 OBJECT_K 替换为默认的 OBJECT 并且它有效。
我有一个关于 wpdb 的非常奇怪的问题,这让我很害怕。我的数据库有以下数据:
INSERT INTO `wp_clb_likes` (`id`, `post_id`, `user_ip`, `time`)
VALUES
(5,11511,'::1','2015-01-25 09:23:26'),
(6,11511,'::1','2015-01-25 09:23:34'),
(7,11511,'::1','2015-01-25 09:24:07'),
(8,11511,'::1','2015-01-25 09:24:44'),
(9,11511,'::1','2015-01-25 09:28:53'),
(10,11511,'::1','2015-01-25 09:29:23'),
(11,11511,'::1','2015-01-25 09:31:06'),
(12,11511,'::1','2015-01-25 09:31:30'),
(13,11172,'::1','2015-01-25 09:43:10'),
(14,11511,'::1','2015-01-25 20:23:31'),
(15,11315,'::1','2015-01-25 20:32:01'),
(16,11025,'::1','2015-01-25 20:32:59');
在 WP 中我有查询:
public static function getAllObjects() {
global $wpdb;
global $clb_table;
$sql = $wpdb->get_results("SELECT COUNT(*) as likes, post_id from $clb_table GROUP BY post_id ORDER BY likes DESC", OBJECT_K);
return $sql;
}
我的 var_dump 在前面的 WP 上显示:
array(2) { [9]=> object(stdClass)#4818 (2) { ["likes"]=> string(1) "9" ["post_id"]=> string(5) "11511" } [1]=> object(stdClass)#4817 (2) { ["likes"]=> string(1) "1" ["post_id"]=> string(5) "11172" } }
为什么我只看到 post_id 11511 和 11172 而不是 11315 和 11025?
有人知道原因吗?谢谢!
自己解决了。由于 get_results() 中的 OBJECT_K 设置,该函数不会列出数据库的所有项目...我将 OBJECT_K 替换为默认的 OBJECT 并且它有效。