【问题标题】:Mysql triple equal problem for number data type数字数据类型的Mysql三等分问题
【发布时间】:2021-10-18 03:51:33
【问题描述】:

我有一个 student_details 表。其中 Roll 是主键,共有 8 个学生列表(101 到 108)。现在我要测试下面的SQL命令


    SELECT * FROM student_details
    WHERE Roll === 105 AND Roll === 107;

但我遇到了这个错误

#1064 - 您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册,以了解要使用的正确语法 在第 2 行的 '== 105 AND Roll === 107 LIMIT 0, 25' 附近

这里的卷号 105 和 107 都是数字数据类型。为什么我会遇到这个错误?

【问题讨论】:

  • 通过阅读 MariaDB 错误并检查manual on operators,您将看到没有三等、双等甚至四等。一个就足够了。 Roll 不能同时是 105 AND 107。你的意思是OR

标签: xampp mariadb mysql-error-1064


【解决方案1】:

MySQL 没有=== 运算符。它也没有== 运算符。

SQL 不是 Javascript 或 PHP。它有不同的语法。

SQL 只有一个等号 (=) 作为相等比较运算符。

阅读https://dev.mysql.com/doc/refman/8.0/en/comparison-operators.html了解详情。

MariaDB 的匹配文档页面是https://mariadb.com/kb/en/comparison-operators/

【讨论】:

    猜你喜欢
    • 2012-03-03
    • 1970-01-01
    • 2011-01-13
    • 2021-01-22
    • 2021-04-24
    • 2011-10-26
    • 2011-11-03
    相关资源
    最近更新 更多