hyunbar

前言

  在使用Union all连接时,若A集合中某列为nvarchar2或nvarchar类型,而B集合中无此列,用‘ ’ 来代替是会报字符集不匹配

1 select \'中国\',\'China\',cast(\'中国\' as nvarchar2(10)) T
2 from dual
3 union all
4 select \'美国\',\'USA\',\'\' 
5 from dual;

 

解决方法

  1、to_char()

  

1 select \'中国\',\'China\',to_char(cast(\'中国\' as nvarchar2(10))) T
2 from dual
3 union all
4 select \'美国\',\'USA\',\'\' 
5 from dual;

  2、 用N\' \',N\'\'是将‘’转换为Unicode编码

1 select \'中国\',\'China\',cast(\'中国\' as nvarchar2(10)) T
2 from dual
3 union all
4 select \'美国\',\'USA\',N\'\' 
5 from dual;

 

分类:

技术点:

相关文章:

  • 2021-11-27
  • 2021-12-10
  • 2021-12-14
  • 2021-07-01
  • 2021-11-06
  • 2021-09-27
  • 2021-09-27
  • 2021-11-13
猜你喜欢
  • 2021-11-26
  • 2021-09-27
  • 2022-01-05
  • 2021-09-17
  • 2021-08-16
  • 2018-10-31
  • 2021-09-05
相关资源
相似解决方案