来自MySQL的错误消息

来自MySQL的错误消息,mysql,Mysql,这是我的密码。我不确定我用它做错了什么。数据库名为inventory,表名为data。我试图在一个名为check_up date的字段中从最早的日期开始订购,并提取前两个最早的日期。我想排除名为“nobody”、“mainconf”和“testing”的用户: 这是我的错误: (1064, 'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version fo

这是我的密码。我不确定我用它做错了什么。数据库名为inventory,表名为data。我试图在一个名为check_up date的字段中从最早的日期开始订购,并提取前两个最早的日期。我想排除名为“nobody”、“mainconf”和“testing”的用户:

这是我的错误:

(1064, 'You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near
\'WHERE data.name != "nobody" AND WHERE data.name != "mainconf" AND WHERE
data.nam\' at line 1')
以下是错误:

  • ORDER BY
    必须在
    WHERE
    子句之后和
    限制之前
  • 您不需要每次都重复
    WHERE
    。只要写下
    ,你就完成了

  • 排序的时间较晚(在之后,其中限制之前):


    WHERE
    子句需要位于
    orderby
    子句之前。您只需要指定一次
    WHERE
    子句

    SELECT user from data WHERE data.name != "nobody" AND data.name != "mainconf" AND data.name != "testing" ORDER by checkup_date ASC limit 2
    

    正确的MySQL语法应该是:

    SELECT user from data  WHERE data.name != "nobody" AND data.name != "mainconf" AND data.name != "testing" ORDER by checkup_date ASC LIMIT 2
    
    每个AND后面不需要“WHERE”,所有WHERE子句后面都需要ORDER BY

    SELECT 
        user 
    FROM 
        data  
    WHERE 
        data.name != "nobody" AND data.name != "mainconf" AND data.name != "testing" 
    ORDER BY 
        checkup_date ASC 
    LIMIT 2
    

    试试这个。

    第一部分正确,但不能重复!(1064,'您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以了解在'WHERE data.name!=“mainconf”和'WHERE data.name!=“testing”order by checkup \'第1行附近使用的正确语法)@AndrewAlexander您真的读过我的答案了吗?在第二点中,我断言你必须有一个
    SELECT user from data  WHERE data.name != "nobody" AND data.name != "mainconf" AND data.name != "testing" ORDER by checkup_date ASC LIMIT 2
    
    SELECT 
        user 
    FROM 
        data  
    WHERE 
        data.name != "nobody" AND data.name != "mainconf" AND data.name != "testing" 
    ORDER BY 
        checkup_date ASC 
    LIMIT 2
    
    SELECT user 
    from data 
    WHERE name != "nobody" AND name != "mainconf" AND name != "testing"
    ORDER by checkup_date  ASC 
    limit 2