tomcat项目部署mysql报错3065

报错:

SQL: SELECT DISTINCT ct.serial_no AS serial_no FROM xzfy_case_table AS ct WHERE ct.case_status != ? AND ct.registrant_id = ? ORDER BY application_date DESC LIMIT ?, ?

Cause: java.sql.SQLException: Expression #1 of ORDER BY clause is not in SELECT list, references column 'xzfy.ct.application_date' which is not in SELECT list; this is incompatible with DISTINCT

; uncategorized SQLException; SQL state [HY000]; error code [3065]; Expression #1 of ORDER BY clause is not in SELECT list, references column 'xzfy.ct.application_date' which is not in SELECT list; this is incompatible with DISTINCT; nested exception is java.sql.SQLException: Expression #1 of ORDER BY clause is not in SELECT list, references column 'xzfy.ct.application_date' which is not in SELECT list; this is incompatible with DISTINCT

本地 在application_date前加上ct.可以正常运行不报错

互联网 在application_date前加上ct.还是报错

原因:

通过show VARIABLES查看mysql的详细配置

sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'

是因为ONLY_FULL_GROUP_BY的存在

解决办法:(永久关闭ONLY_FULL_GROUP_BY)

1.找到配置文件/etc/my.cnf(或则关联文件夹找到mysql-server.cnf)

2.在上述文件内的[mysqld]后追加

sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'

3.保存配置文件后,重启Mysql即可。

相关推荐
小小码农Come on1 小时前
Qt Creator + MSVC 2022 64bit 配置 Dump 文件生成与分析流程
数据库·qt
qiuyuyiyang2 小时前
【MySQL】环境变量配置
数据库·mysql·adb
神仙别闹3 小时前
基于NodeJS+Vue+MySQL实现一个在线编程笔试平台
前端·vue.js·mysql
jgyzl3 小时前
2026.3.11MyBatis-Plus基本使用与思考
java·数据库·mybatis
RDCJM3 小时前
【MySQL】在MySQL中STR_TO_DATE()以及其他用于日期和时间的转换
android·数据库·mysql
vanvivo3 小时前
redis 使用
数据库·redis·缓存
加成BUFF4 小时前
解决MySQL/MariaDB忘记root密码:完整重置教程(XAMPP/Windows版)
数据库·mysql·xampp
杰克尼4 小时前
苍穹外卖--day10
java·数据库·spring boot·mybatis·notepad++
dreamread4 小时前
完美解决phpstudy安装后mysql无法启动
数据库·mysql
小江的记录本4 小时前
【SQL】多表关系与冷热数据(全维度知识体系)
数据库·sql·mysql·数据库开发·数据库架构