如何在Moodle中过滤非空值的记录?

如何在Moodle中过滤非空值的记录?,moodle,Moodle,我正在尝试选择一个具有非空值的mimetype字段的记录 $file = $DB->get_record('table', array('itemid' => $id_imagen, 'component' => 'user', 'mimetype' => 'is not null')); 有没有办法使用get_record获取此信息?我会回答自己的问题,以防这对某人有所帮助 不,不能使用is NOT NULL或其他带有get_记录功能的文件。您可以使用函数get\u

我正在尝试选择一个具有非空值的mimetype字段的记录

$file = $DB->get_record('table', array('itemid' => $id_imagen, 'component' => 'user', 'mimetype' => 'is not null'));

有没有办法使用get_record获取此信息?

我会回答自己的问题,以防这对某人有所帮助

不,不能使用is NOT NULL或其他带有get_记录功能的文件。您可以使用函数get\u record\u sql完成它,如下所示:

$file = $DB->get_record_sql("SELECT * FROM table WHERE itemid = " . $id_imagen . " AND component = 'user' AND mimetype IS NOT NULL");

我认为没有办法做到这一点。正如我在lib/dml/moodle_database.php中所看到的,在函数where_子句中,它表示if(is_null($value)){$where[]=“$key is null””,因此这将是放置if($value==‘is NOT null’){$where[]=“$key is NOT null”之类内容的正确位置;