0
RDB $ FieldsとRDB $ Relation_Fieldsを使用して、リレーションでグループ化されたフィールドのリストを取得しようとしています。 SQLは、次のとおりです。複数のテーブルでdistinctを選択
select distinct
RDB$relation_Fields.RDB$relation_name as "Relation Name" ,
RDB$relation_Fields.RDB$field_name as "Field Name " ,
(select RDB$Fields.RDB$Field_Type as "Field Type"
from RDB$Fields
where RDB$Fields.rdb$Field_Name =
RDB$relation_Fields.RDB$Field_Name)
from
RDB$fields ,
RDB$relation_Fields
where
RDB$relation_Fields.RDB$relation_name = 'Database_Table' and
substring ( RDB$relation_name from 1 for 4) <> 'IDE$' and
substring ( RDB$relation_name from 1 for 4) <> 'MON$' substring ( RDB$relation_name from 1 for 4) <> 'RDB$'
order by
RDB$relation_name,
RDB$relation_Fields.rdb$field_name
私が代わりに
Relation Name Field Name Field Type
------------- ---------- ----------
Database_Table Field1 TypeX
Database_Table Field2 TypeY
... ... ...
を取得する必要があり、私は私に正しいSQLを表示してください
Relation Name Field Name Field Type
------------- ---------- ----------
Database_Table Field1 <null>
Database_Table Field2 <null>
... ... <null>
を取得しています。
非常に良い答えです。 ( 'IDE $'、 'MON $' 'RDB $') 'にない' substring(rf.RDB $ relation_name from 1 to 4) 'を使ってこのクエリを短縮すると、読みやすくなります。 –
目次:ON句は、おそらく 'ON f.RDB $ FIELD_NAME = rf.RDB $ FIELD_SOURCE'です。http://www.firebirdsql.org/file/community/conference-2014/pdf/22_tips_firebird_system_tables.pdf –
ありがとうございます(回答とコメント)!参加は違いをもたらしました。 Thorstenのコメント1は非常に便利であり、コメント2は基本的なものでした。 – user2383818