当前位置: 首页 > article >正文

Mysql 8.0.32 union all 创建视图后中文模糊查询失效

记录问题,最近在使用union all聚合了三张表的数据,创建视图作为查询主表,发现字段值为中文的筛选无法生效..........

sql示例:

CREATE OR REPLACE VIEW test_view AS SELECTid,`name`,location_address AS address,type,"1" AS data_type,COALESCE ( update_time, create_time ) AS update_time 
FROMtable_1 UNION ALL
SELECTid,`name`,location_address AS address,type,"2" AS data_type,COALESCE ( update_time, create_time ) AS update_time 
FROMtable_2;

发现除了中文外,数值的都能筛选出来,查询后发现说是数据库的字符集得弄成utf8mb4,但是这个基本是没问题的,并且这个查看也没问题

-- 查看当前会话的字符集设置
SHOW VARIABLES LIKE 'character_set%';

查询视图字符集也没毛病

SHOW FULL COLUMNS FROM test_view;

通过上述基本排除了是字符集的原因,另外又将两个表单独创建并对中文字段值进行筛选,发现单表时是没问题的,但是一使用union的聚合,筛选就失效了.............

最后网上不断的查,才找到了说8.0.32的版本 union有问题,升级或更换版本才能解决这个,但是不想再重装了,使用临时的方案处理

SET GLOBAL optimizer_switch='derived_condition_pushdown=off';

全局关闭,调整 MySQL 查询优化器行为的,禁用“派生表条件下推”.....

最终查询生效,算是临时解决吧.......

http://www.lryc.cn/news/2378774.html

相关文章:

  • Jenkins 执行器(Executor)如何调整限制?
  • Android 中 权限分类及申请方式
  • 编程错题集系列(一)
  • 【原创】基于视觉大模型gemma-3-4b实现短视频自动识别内容并生成解说文案
  • Spark(32)SparkSQL操作Mysql
  • 基于 Python 的界面程序复现:标准干涉槽型设计计算及仿真
  • c++成员函数返回类对象引用和直接返回类对象的区别
  • AGI大模型(20):混合检索之rank_bm25库来实现词法搜索
  • 数字化转型- 数字化转型路线和推进
  • 字体样式集合
  • IP68防水Type-C连接器实测:水下1米浸泡72小时的生存挑战
  • 【技术追踪】InverseSR:使用潜在扩散模型进行三维脑部 MRI 超分辨率重建(MICCAI-2023)
  • React学习(二)-变量
  • list重点接口及模拟实现
  • 【自然语言处理与大模型】大模型(LLM)基础知识④
  • 系统架构设计(九):分布式架构与微服务
  • Java 框架配置自动化:告别冗长的 XML 与 YAML 文件
  • vue使用Pinia实现不同页面共享token
  • 遨游科普:三防平板是什么?有什么功能?
  • spring MVC 至 springboot的发展流程,配置文件变化
  • 深入解析Spring Boot与JUnit 5的集成测试实践
  • AI全域智能监控系统重构商业清洁管理范式——从被动响应到主动预防的监控效能革命
  • 网络编程中的直接内存与零拷贝
  • 区块链基本理解
  • panda机械臂的正逆运动学分析与仿真
  • QT使用QXlsx读取excel表格中的图片
  • VulnHub | Breach - 1
  • CMake基础及操作笔记
  • 在Oracle到GreatSQL迁移中排序规则改变引发的乱码问题分析及解决
  • 开源物联网平台(OpenRemote)