select
t1.city_name
from
(
select
'全国' as city_name
from
stg.t_vip
union all
select
cc.city_name
from
stg.t_city_config cc
join
stg.t_vip v
on
v.city_id = cc.city_id
) t1
full join
(
select
'全国' as city_name
from
stg.t_vip_trade
) t2
on
t1.city_name = t2.city_name;
select
t1.city_name
from
(
select
'全国' as city_name
from
stg.t_vip
union all
select
cc.city_name
from
stg.t_city_config cc
) t1
full join
(
select
'全国' as city_name
from
stg.t_vip_trade
) t2
on
t1.city_name = t2.city_name;
为什么第二个 SQL 正常,而第一个 SQL 出现错误:
Failed to encode '全国' in character set 'ISO-8859-1'
最佳答案
可以添加这样的代码:
System.setProperty("saffron.default.charset",ConversionUtil.NATIVE_UTF16_CHARSET_NAME); System.setProperty("saffron.default.nationalcharset",ConversionUtil.NATIVE_UTF16_CHARSET_NAME); System.setProperty("saffron.default.collation.name",ConversionUtil.NATIVE_UTF16_CHARSET_NAME + "$en_US");
关于sql - 组织.Apache.calcite.runtime.CalciteException : Failed to encode '全国' in character set 'ISO-8859-1' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33888393/