首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MYSQL 5.7 升级 8.0 后的 由于字符集导致的大问题 ?

    在这样的情况下,会产生如下一些假设,下面是一些表的表结构,其中orders的表,是UTF8MB4 格式 排序是 utf8mb4_9000_ai_ci ,而我们的payments表是utf8mb3 的格式...customernumber`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; CREATE TABLE `payments...where paymentdate > '2005-01-01'; explain select * from orders as o left join (select * from payments...where paymentdate > '2005-01-01'; 语句如上,第一个语句为 utf8 作为驱动表,可以明显看到因为两个表的字符集和collation的不同,导致无法走索引进行查询,这里也就是 payments...我们将语句实际执行,并查看profilings ,这里可以看到的是,我们将payments 放到上面的情况下 executing 为 700 而将ORDER 放到驱动表的情况下,execute 变为

    2.1K50
    领券