mysql的union all结果where查询条件中包含中文查询结果为空

mysql的union all结果where查询条件中包含中文查询结果为空
mysql数据库版本8.0.32
怀疑是不是什么mysq版本bug,因为数据库重新装过了,可能版本改变了,之前sql是正常使用的
详情如下 :

SELECT NAME 
FROM
    ( 
    SELECT NAME FROM a 
    UNION ALL SELECT NAME FROM b 
    UNION ALL SELECT NAME FROM c ) t
WHERE
    t.NAME = '张三'

字符集都检查过了,只有NAME='中文' 查询结果为空(实际有值),NAME='1'数字或者NAME='q'字母就行。
测试后在不使用union all时没有问题。
目前只能在union all 连接的子句上添加条件使用:

SELECT NAME 
FROM
    ( 
    SELECT NAME FROM a where name = '张三'
    UNION ALL SELECT NAME FROM b where name = '张三'
    UNION ALL SELECT NAME FROM c where name = '张三'
        ) t

请问你这个问题解决了吗,我也遇到这个情况了