选择列不为空的行?

nev*_*ame 3 php mysql sql

默认情况下,我在mysql表中有一列为NULL.

我想选择一些行,但仅当该列中的字段值不是NULL时.

打字的正确方法是什么?

    $query = "SELECT *
            FROM names
            WHERE id = '$id'
            AND name != NULL";
Run Code Online (Sandbox Code Playgroud)

它是否正确?

Lar*_*tig 8

 AND name IS NOT NULL
Run Code Online (Sandbox Code Playgroud)

(NULL比较需要SQL中的特殊IS和IS NOT运算符)


And*_*ndy 7

你应该使用(假设$id是一个整数):

   $query = "SELECT *
            FROM names
            WHERE id = '" . (int) $id ."'
            AND name IS NOT NULL";
Run Code Online (Sandbox Code Playgroud)

您必须使用IS NULLIS NOT NULL用NULL值工作