如何确定 SQL 查询表达式的数据类型
How to determine datatype of SQL query expression
我需要将查询的输出传递给我的 Datastage 作业,后者将进一步处理它。问题是我在 SQL 查询中使用了类型转换和计算,DataStage 需要知道输入列的确切数据类型。
更简单的方法是猜测列类型,例如:将其转换为 INT
但有时它是 INT64,然后我必须更改它,所以我正在寻找可靠的东西来节省我的时间。
更像是结果集的元数据。
这取决于您执行查询的方式。
在 DB2 命令行处理器中,您可以使用 command DESCRIBE SELECT <the rest of your query>
打印结果集列的列表及其数据类型。
在批处理脚本中,您可以解析 DESCRIBE
的输出。
在 CLI 或嵌入式 SQL 应用程序中,您可以使用相应的 DESCRIBE OUTPUT
statement 将结果集元数据检索到 SQLDA 结构中。
这假定 DB2 用于 LUW,但是 DB2 支持 z/OS 和 IBM i (AS/400) 以及 DESCRIBE
语句。
我需要将查询的输出传递给我的 Datastage 作业,后者将进一步处理它。问题是我在 SQL 查询中使用了类型转换和计算,DataStage 需要知道输入列的确切数据类型。
更简单的方法是猜测列类型,例如:将其转换为 INT 但有时它是 INT64,然后我必须更改它,所以我正在寻找可靠的东西来节省我的时间。
更像是结果集的元数据。
这取决于您执行查询的方式。
在 DB2 命令行处理器中,您可以使用 command DESCRIBE SELECT <the rest of your query>
打印结果集列的列表及其数据类型。
在批处理脚本中,您可以解析 DESCRIBE
的输出。
在 CLI 或嵌入式 SQL 应用程序中,您可以使用相应的 DESCRIBE OUTPUT
statement 将结果集元数据检索到 SQLDA 结构中。
这假定 DB2 用于 LUW,但是 DB2 支持 z/OS 和 IBM i (AS/400) 以及 DESCRIBE
语句。