sql >> Database teknologi >  >> RDS >> PostgreSQL

Spørg efter skemadetaljerne for en tabel i PostgreSQL?

Der er en meget enklere måde i PostgreSQL for at få typen af ​​en kolonne.

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

Bordet skal selvfølgelig indeholde mindst én række. Og du får kun basistypen uden typemodifikatorer (hvis nogen). Brug alternativet nedenfor, hvis du også har brug for det.
Du kan også bruge funktionen til konstanter. manualen på pg_typeof() .

For en tom (eller en hvilken som helst) tabel kan du bruge forespørgsel i systemkataloget pg_attribute for at få den fulde liste over kolonner og deres respektive type i rækkefølge:

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;

Manualen til format_type() og på objektidentifikatortyper som regclass .



  1. Hvordan tæller man elementer ved hjælp af gener_series()-ækvivalent i MySQL?

  2. Hvad er en overordnet tabel og en underordnet tabel i databasen?

  3. Foretag flere input i mysql-tabellen på én gang med én indsend-knap

  4. Hvordan finder man nærmeste placering ved hjælp af bredde- og længdegrad fra SQL-database?