필자는 DB2에서 설명적인 테이블 이름을 만들기 시작했으며 DB2는 각 테이블에 대해 짧은 이름과 긴 이름을 가지고 있음을 알게되었습니다.DB2 SQL 쇼 길고 짧은 테이블 이름?
EmployeePlan 내가 SQL 문에서 두 이름을 표시 할 수 있도록하고 싶습니다 Emplo00001
의 짧은 이름이 있습니다. 여기 내 기존 SQL이 있습니다. 짧은 이름을 얻기 위해 내가 가입 할 수있는 테이블이 있습니까?
select * --table_name, system_column_name, column_text, Type_Name, column_Size, *
from sysibm.SQLColumns
where table_schem IN ('LAWMOD9T', 'LIBDDS')
and upper(table_name) IN ('EMPLOYEEPLAN')
ORDER BY system_column_name
그리고 감사합니다, 이렇게 빨리 내 질문에 대답하기위한 다리우스 X.
이SELECT b.system_table_name as ShortName,
a.table_name, a.system_column_name, a.column_text,
a.type_name, a.column_size
FROM sysibm.SQLColumns a
INNER JOIN qsys2.systables b
ON a.table_name = b.table_name
AND a.table_schem = b.table_schema
WHERE UPPER(a.table_schem) IN ('LAWMOD9T', 'LIBDDS')
AND UPPER(a.table_name) IN ('EMPLOYEEPLAN')
ORDER BY a.table_schem, a.table_Name, a.ordinal_position
우수 너무 짧은 이름의 필터를 추가 할 수 있습니다. 그것은 내가 찾고 있었던 바로 그 것이다. 여기 내 마지막 쿼리 ... 짧은 이름, a.table_name, a.system_column_name, a.column_text, a.type_name 같은 SELECT b.system_table_name하는 INNER가 B의를 qsys2.systables 가입 sysibm.SQLColumns FROM a.column_size 입니다 a.table_name = b.table_name AND a.table_schem = b.table_schema WHERE UPPER IN (a.table_schem) ('LAWMOD9T', 'LIBDDS') AND ('EMPLOYEEPLAN') IN ORDER UPPER (a.table_name) a.table_schem, a.table_Name, a.ordinal_position에 의해 –