Poszukuję prostego sposobu zaznaczenia wszystkich kolumn oprócz jednej w psql.
Z psql
Znaczy interaktywny wiersz polecenia.
Byłbym zadowolony z narzędzia, które rozwija się *
do listy cytowanych nazw kolumn. Następnie mógłbym usunąć kolumnę, aby usunąć ręcznie.
Moje pytanie dotyczy tylko interaktywnego użycia psql. Nie jest to duplikat pytań osób niezadowolonych ze standardu sql i chcących wykonać coś takiego jak „select * -foo”.
postgresql
psql
guettli
źródło
źródło
information_schema
za pomocą funkcji pl / pgsql, aby dość łatwo wygenerować listę, ale w ten sposób byłyby to dwa zapytania.desc
polecenia wpsql
Odpowiedzi:
Aby uzyskać listę kolumn w domyślnej kolejności, bez złej kolumny:
Lub tylko
WHERE attrelid = 'mytable'::regclass
jeśli ufasz ścieżce wyszukiwania w celu rozwiązania właściwego schematu.quote_ident()
w razie potrzeby dodaje cudzysłowy.Zadałem to samo pytanie w 2007 r. W sprawie pgsql-general . To był wtedy Postgres 8.2. Słodkie wspomnienia ...
Związane z:
źródło
\dq thetable bad_column
.q
do zadania. Może ogólną opcją dla całej rodziny\d
poleceń, aby wyświetlić pustą listę powiązanych nazw? Like\d- tbl
(mnemonic: przeciwieństwo\d+
, które pokazuje więcej szczegółów). Pozwoliłoby to uzyskać praktycznie dowolną pustą listę obiektów. Tabele w schemacie:\dt- public.*
, funkcje zaczynające się od „f_foo”:\df- f_foo*
itd. - lub kolumny w tabeli:\d- mytbl
. Podobnie do tego, cols
robi polecenie powłoki ...Myślę, że znalazłem to, czego szukasz, ale sam tego nie przetestowałem.
Istnieje oprogramowanie o nazwie SequelPro, które pozwala wybrać pola z danej tabeli, ale tylko dla MySQL. Proszę przeczytać od dołu gdzieś na środku strony:
Istnieje inne oprogramowanie o nazwie PSequel, które działa tylko na komputerach Mac i twierdzi, że jest typu SequelPro zbudowanego dla Postgres:
Mam nadzieję że to pomoże.
źródło