如何使用wpdb prepare正确执行此SQL查询?

时间:2018-11-07 13:20:28

标签: sql wordpress prepared-statement

我正在尝试使用wpdb-> prepare在Wordpress中编写两个SQL查询。我在这里已经阅读了所有其他有关使用wpdb-> prepare的文章,但找不到与我的查询匹配的文章。我已经尝试了其他文章中的一些示例,但它们只是破坏了我的页面。这是我第一次尝试编写SQL查询并使用wpdb-> prepare,因此我对如何使其工作有些迷茫:

以下是声明:

$wpdb->get_results("SELECT * FROM mytable WHERE id != $myparameter AND expires_at >= DATE(NOW()) AND country = $countryrelated ORDER BY created_at LIMIT 5"); 

$wpdb->query("UPDATE mytable SET expired_emailed = 1 WHERE expired_emailed = 0 AND expires_at <  DATE_SUB(NOW(), INTERVAL 1 DAY) ");

我已经了解到了

$wpdb->get_results($wpdb->prepare("SELECT * FROM mytable WHERE id != $myparameter AND expires_at >= DATE(NOW()) AND country = $countryrelated ORDER BY created_at LIMIT 5")); 

$wpdb->query( $wpdb->prepare("UPDATE mytable SET expired_emailed = 1 WHERE expired_emailed = 0 AND expires_at <  DATE_SUB(NOW(), INTERVAL 1 DAY) " ) );

...但是给出了错误:Uncaught ArgumentCountError:函数wpdb :: prepare()的参数太少,传递了1个

我知道我需要在某处添加%s或其他内容,但是无法解决。

非常感谢任何帮助。

0 个答案:

没有答案