IBM DB2中的数据类型转换:BIGINT到VARCHAR [英] Datatype conversion in IBM DB2: BIGINT to VARCHAR

查看:1108
本文介绍了IBM DB2中的数据类型转换:BIGINT到VARCHAR的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在写一个查询来做一些事情。但是它不能按照我想要的方式工作:

 从TABLE1中选择CORR_ID 
其中CORR_ID不在(select id从TABLE2)

问题是,TABLE2.id是一个很长的时间,而TABLE1.CORR_ID是一个字符串



那么我该如何使其工作?



PS:我使用的是IBM UDB。 p>

解决方案

好的,我找到了一个方法:

 从TABLE1中选择CORR_ID,其中CORR_ID不在
(从TABLE2中选择CAST(CAS AS(50))AS VARCHAR(50))
/ pre>

这是非常有趣的:你不能将BIGINT投给VARCHAR,但是:




  • 你可以投一个BIGINT到CHAR

  • ,你可以转一个CHAR到VARCHAR



这是可笑的!


I'm writing a query to do some stuff. But its not working the way I want it to:

select CORR_ID from TABLE1
where CORR_ID not in (select id from TABLE2)

The problem is, TABLE2.id is a long, while TABLE1.CORR_ID is a string.

So how can I make it work?

PS: I'm using IBM UDB.

解决方案

Okay, I found a method:

select CORR_ID from TABLE1 where CORR_ID not in 
(select CAST( CAST(id AS CHAR(50)) AS VARCHAR(50) ) from TABLE2)

This is pretty intriguing: You can't cast a BIGINT to VARCHAR, but:

  • you can cast a BIGINT to CHAR
  • and you can cast a CHAR TO VARCHAR

this is ridiculous!

这篇关于IBM DB2中的数据类型转换:BIGINT到VARCHAR的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆