在使用 DB2 时,我注意到一个奇怪的行为SYSIBM.SYSCOLUMNS
,它只出现在一个表中。
这是我的查询:
select distinct NAME, COLTYPE, LENGTH, SCALE, REMARKS from SYSIBM.SYSCOLUMNS where TBNAME='Table1';
通常结果显示每个表一次。
|===================================|
| NAME |COLTYPE|LENGTH|SCALE|REMARKS|
|col1 | ..... |......|.....|.......|
|col2 | ..... |......|.....|.......|
|col3 | ..... |......|.....|.......|
|===================================|
但是如果我使用一个特定的表,我们称之为它Table2
,每列显示两次:
|===================================|
| NAME |COLTYPE|LENGTH|SCALE|REMARKS|
|col1 | ..... |......|.....|.......|
|col1 | ..... |......|.....|.......|
|col2 | ..... |......|.....|.......|
|col2 | ..... |......|.....|.......|
|col3 | ..... |......|.....|.......|
|col3 | ..... |......|.....|.......|
|===================================|
但前提是我REMARKS
在选择语句中包含了。如果我REMARKS
从我的选择中删除,一切都会按预期工作。
这个问题的原因可能是什么?我的查询有问题吗?