You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在WordPress中获取数据库表ingredients列的最后一条数据?

解决WordPress插件中获取表最后一条数据的问题

你第一次查询返回空数组的核心原因是:表的自增字段是key,而非你代码里使用的id,导致子查询select max(id) from $dp找不到匹配数据。以下是几种正确获取最后一条ingredients数据的方法:

方法一:修正SQL字段,用max(key)定位最后一条

global $wpdb;
$table_name = $wpdb->prefix . "test-enes";
// 替换字段为实际存在的`key`,查询最大key对应的ingredients
$result = $wpdb->get_results("SELECT `ingredients` FROM `$table_name` WHERE `key` = (SELECT MAX(`key`) FROM `$table_name`)");
// 输出结果
if (!empty($result)) {
    echo $result[0]->ingredients; // 会输出reer
}

方法二:用ORDER BY + LIMIT直接取最后一条(更简洁)

这种写法适合单条数据查询,逻辑更直观:

global $wpdb;
$table_name = $wpdb->prefix . "test-enes";
// 按`key`降序排列,取第一条就是最后插入的记录
$result = $wpdb->get_row("SELECT `ingredients` FROM `$table_name` ORDER BY `key` DESC LIMIT 1");
if ($result) {
    echo $result->ingredients; // 输出reer
}

方法三:使用$wpdb->prepare(更安全,防SQL注入)

如果涉及动态表名/字段,推荐用WordPress官方的安全查询方式:

global $wpdb;
$table_name = $wpdb->prefix . "test-enes";
$query = $wpdb->prepare(
    "SELECT `ingredients` FROM `%s` ORDER BY `key` DESC LIMIT 1",
    $table_name
);
$result = $wpdb->get_row($query);
if ($result) {
    echo $result->ingredients;
}

另外注意:你代码里出现了$wpdp的笔误,正确的全局数据库变量是$wpdb,后续开发要避免这类拼写错误。

内容的提问来源于stack exchange,提问作者Enes ÖZAY

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 05:24:12