IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 呕心沥血总结出来的MySQL常见错误以及解决方法(一) -> 正文阅读

[大数据]呕心沥血总结出来的MySQL常见错误以及解决方法(一)

MySQL常见错误总结目录

🔥第一章 MySQL错误总结(?建议收藏)
🔥第二章 MySQL错误总结(?建议收藏)

前言

??操作数据库时,总是出现一些常见错误,这些错误看似不同,但是万变不离其宗,
于是便有了把这些常见错误的总结下来的心思, 希望可以给读到此文章的读者带去帮助,这样这篇文章也有了意义。
如果觉得有帮助可以**点赞收藏**支持一下,能关注一下就再好不过???

一、MySQL错误总结(一)

1052 - Column ‘XXX’ in field list is ambiguous

问题分析与解决方案

  • 1 .在多表查询时,出现了多个表中都出现的字段,而这个字段没有指明是那个表的字段,导致SQL不知道是那个表的段。需要在每个字段前指明其所在的表

1054 - Unknown column ‘XXX’ in ‘where clause’

问题分析与解决方案

  • 1 . SQL语句WHERE里面的列名写错误(例如列名添加错误)修改列名。
  • 2 .或者参数写的不对,不符合规范

添加(查询)数据时候出现1054 - Unknown column ‘myt3’ in ‘field list’

问题分析与解决方案

  • 1 .传数据时,数据类型不对,比方说 字符串和日期类型的变量需要加一对‘’单引号的数据,没有加
  • 2 .数据表里面的列名写错误(例如列名添加错误)修改列名。

1055 - Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘XXX’ which is not functionally

dependent on columns in GROUP BY clause; this is incompatible with
sql_mode=only_full_group_by

问题分析与解决方案

  • 1 . 网上的的方法都是修改配置,那样解决不了根本问题, 只是不报错 。仔细分析数据是因为有重复的存在, 相当于 group by 就没用上所以出现这个问题
    例如在这里插入图片描述

按照部门id分组,但是却要出现所有的salary,相当于部门分组,但是其他没有,导致GROUP BY 没效果

正确写法(不要有重复,让GROUP BY 失效)

在这里插入图片描述

  • 2 .GROUP BY 后面的条件写错,如果要依靠多个字段分组应该用 ‘ ,’分隔,不能使用AND,OR条件之间判断的谓词,如果想要过滤分组
    使用. HAVING。
  • 3 .注意SELECT中出现的非组函数的字段必须声明在GROUP BY中,GROUP BY中声明的字段可以不出现在SELECT中。

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 ‘user test1’ at line 1

问题分析与解决方案

  • 1 .SQL语句 编写错误,定位到单引号里面的提示哪里,去修改SQL语句(仔细检查拼写、标点符号)
    例如
    在这里插入图片描述
  • 2 .可能是关键字的位置颠倒了,比方说GROUP BY 声明没有放在FROM、WHERE 后面或者LIMIT前面等等

1111 - Invalid use of group function

问题分析与解决方案

  • 1 .聚合函数的无效用法,出现这个问题是因为在WHERE过滤条件里面写了聚合函数,而 GROUP BY 配合使用聚合函数则需要HAVING。
  • 2 .聚合函数出现了嵌套,而聚合函数就不能嵌套使用。
    在这里插入图片描述
## 1146 - Table 'test1.sys_menu' doesn't exist

问题分析与解决方案

  • 1 .数据表不在数据库,查看数据表是否写错误;
  • 2 .检查是否使用的的是另一个数据库,数据库的位置不对,导致在这个数据库查询另一个数据库的表。

1140 - In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column 'XXX; this is incompatible

with sql_mode=only_full_group_by

问题分析与解决方案

  • 1 . 在MySQL5.7.5后,默认开启了ONLY_FULL_GROUP_BY,这里的SQL不规范造成这个错误出现,
    因为group by 后,返回的一些数据是不确定的,所以才会出现这个错误。
  • 2 . 没有使用过滤条件,只是单独用了函数,同时查询还有其他字段,
    比方
    SELECT job_id,COUNT()
    -> FROM employees;
    在这里插入图片描述
    count()是一个多对一的函数,返回结果要是字段出现的个数,没有限制条件过滤,出来的是数据库行总数,无法实现SELECT多对一的结果,所以报错误,需要加上过滤条件或者SELECT COUNT(
    ) FROM employees;。

简而言之 任何没有出现在group by子句中的属性,如果想要出现在select子句中的话,那么该属性只能出现在聚集函数的内部

1241 - Operand should contain 1 column(s)

问题分析与解决方案

  • 1 . 我们的sql语句多出一列操作数,或者是给的参数格式不正确,修改SQL语句
  HAVING AVG(salary)<=ALL(SELECT department_id,AVG(salary) 'avg_salary' FROM employees)

这里的AVG(salary)对应了两列操作数,所以出现了不知道匹配谁的问题.

1242 - Subquery returns more than 1 row

问题分析与解决方案

  • 1 . 子查询结果多于一行,修改子查询的结果

1248 - Every derived table must have its own alias

问题分析与解决方案

  • 1 . 自己设置的派生表没有起别名,需要在派生表后面起别名,注意嵌套多个派生表,每一个派生表都需要起别名。

1305 - FUNCTION 数据库.XXX does not exist

问题分析与解决方案

  • 1 . 函数不存在,说明在SQL语句 函数写的不正确,导致函数从数据库里面找,而不是从函数库里面找,
    仔细检查函数的名称。

SQL语句空值参与运算,导致结果不对

问题分析与解决方案

  • 1 . 因为在SQL里面null不等于0,使用当NULL参与进运算时,会导致数据的不到理想的答案,
    需要调用IFNULL(含NULL字段,0)函数,当null出现用0代替。

Subquery returns more than 1 row

问题分析与解决方案

  • 1 .这是因为子查询的返回结果为多行,无法匹配出现的问题,修改子查询

希望对各位的学习有帮助,也希望小伙伴们多多支持,留下你们的爱心💕和赞👍!
💗最后最佳听众祝大家能够拿到心仪的Offer💗

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-06-04 00:01:46  更:2022-06-04 00:02:37 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 23:23:21-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码