Suche…


DATEADD-Alternative in Postgres

  • SELECT CURRENT_DATE + '1 day'::INTERVAL
  • SELECT '1999-12-11'::TIMESTAMP + '19 days'::INTERVAL
  • SELECT '1 month'::INTERVAL + '1 month 3 days'::INTERVAL

Kommagetrennte Werte einer Spalte

SELECT 
    string_agg(<TABLE_NAME>.<COLUMN_NAME>, ',') 
FROM 
    <SCHEMA_NAME>.<TABLE_NAME> T

Löschen Sie doppelte Datensätze aus der Postgres-Tabelle

DELETE 
    FROM <SCHEMA_NAME>.<Table_NAME> 
WHERE 
    ctid NOT IN
        (
        SELECT 
            MAX(ctid) 
        FROM 
            <SCHEMA_NAME>.<TABLE_NAME> 
        GROUP BY 
            <SCHEMA_NAME>.<TABLE_NAME>.*
        )
;

Aktualisierungsabfrage mit Verknüpfung zwischen zwei Tabellen alternativ, da Postresql die Aktualisierungsabfrage nicht unterstützt

    update <SCHEMA_NAME>.<TABLE_NAME_1> AS A
    SET <COLUMN_1> = True       
    FROM <SCHEMA_NAME>.<TABLE_NAME_2> AS B 
    WHERE 
        A.<COLUMN_2> = B.<COLUMN_2> AND
        A.<COLUMN_3> = B.<COLUMN_3>

Unterschied zwischen zwei Datumszeitstempeln auf Monats- und Jahresebene

Monatliche Differenz zwischen zwei Datumsangaben (Zeitstempel)

select 
    (
        (DATE_PART('year', AgeonDate) - DATE_PART('year', tmpdate)) * 12 
        +
        (DATE_PART('month', AgeonDate) - DATE_PART('month', tmpdate))
    ) 
from dbo."Table1"

Jahresabweichung zwischen zwei Datumsangaben (Zeitstempel)

select (DATE_PART('year', AgeonDate) - DATE_PART('year', tmpdate)) from dbo."Table1"

Abfrage zum Kopieren / Verschieben / Übertragen von Tabellendaten aus einer Datenbank in eine andere Datenbanktabelle mit demselben Schema

Erste Ausführung

CREATE EXTENSION DBLINK;

Dann

INSERT INTO 
    <SCHEMA_NAME>.<TABLE_NAME_1> 
SELECT * 
FROM 
    DBLINK(
    'HOST=<IP-ADDRESS> USER=<USERNAME> PASSWORD=<PASSWORD> DBNAME=<DATABASE>',
    'SELECT * FROM <SCHEMA_NAME>.<TABLE_NAME_2>')
    AS <TABLE_NAME>
    (
    <COLUMN_1> <DATATYPE_1>, 
    <COLUMN_1> <DATATYPE_2>, 
    <COLUMN_1> <DATATYPE_3>
    );


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow