sql >> データベース >  >> RDS >> PostgreSQL

PostgreSQLでテーブルのスキーマの詳細を照会しますか?

    はるかに簡単があります PostgreSQLで列の型を取得する方法。

    SELECT pg_typeof(col)::text FROM tbl LIMIT 1
    

    もちろん、テーブルには少なくとも1つの行を保持する必要があります。また、型修飾子(存在する場合)のない基本型のみを取得します。必要に応じて、以下の代替手段も使用してください。
    定数にもこの関数を使用できます。 pg_typeof()

    空の(または任意の)テーブルの場合は、システムカタログpg_attributeのクエリを使用できます。 列の完全なリストとそれぞれのタイプを順番に取得するには:

    SELECT attnum, attname AS column, format_type(atttypid, atttypmod) AS type
    FROM   pg_attribute
    WHERE  attrelid = 'myschema.mytbl'::regclass   -- optionally schema-qualified
    AND    NOT attisdropped
    AND    attnum > 0
    ORDER  BY attnum;
    

    format_type() およびオブジェクト識別子タイプ regclassのように 。



    1. Oracle11Gで最も古いパーティションを自動的に削除します

    2. PDOを使用してPHPで結果配列をフェッチするにはどうすればよいですか?

    3. MAXまたはOrderByLimit1を選択します

    4. MySQLselectdistinctが機能しない