Postgresql - query e tipo dati

di
Anonimizzato14909
il
6 risposte

Postgresql - query e tipo dati

Salve, sto imparando Postgresql e vorrei dei chiarimenti:
Volendo risolvere la query:
1. Individua prestiti la cui durata supera i 15gg:
SELECT P.idP, U.Cognome, L.Titolo FROM P,L,U
WHERE L.idL=P.xidL AND U.idU=P.xidU AND
DATEDIFF('d',P.inizio,P.fine)>15

mi viene segnalato l'errore di sintassi DATADIFF, come si potrebbe modificare?

2. nel creare una chiave primaria in una tabella, si scrive:
idI integer PRIMARY key,
oppure
CONSTRAINT idI_pk PRIMARY KEY (idI)
mentre per la chiave esterna
idO_pk integer references impiegato(idI)
oppure
CONSTRAINT foreign key idO_pk references (impiegato.idI)

3. Infine vorrei sapere, come si costruisce la query che permette di inserire il campo di ricerca, es: Conteggiare il numero di corsi tenuti da uno specifico insegnante.

SELECT COUNT (*) AS TOTALE
FROM Corso, Insegnante
WHERE Corso.XidInsegnante=Insegnante.IdInsegnante AND Insegnante.Cognome=[Cognome:];

mi viene segnalato errore di sintassi vicino alla "["

Grazie

6 Risposte

  • Re: Postgresql - query e tipo dati

    Per passare dal linguaggio SQL di SQL-Server/Access a quello di PostgreSQL, perché non leggere il manuale che spiega, anche con esempi, quale sia la sintassi da utilizzare in ciascun ambiente?
    1)
    http://www.sqlines.com/postgresql/how-to/datedif
    2)
    http://www.postgresqltutorial.com/postgresql-primary-key/
    http://www.postgresqltutorial.com/postgresql-foreign-key/
    3)
    http://www.postgresqltutorial.com/postgresql-where
  • Re: Postgresql - query e tipo dati

    willy55 ha scritto:


    perché non leggere il manuale
    Ma non è pericoloso?
    Pensavo che fosse addirittura contro le regole dare certi suggerimenti
  • Re: Postgresql - query e tipo dati

    Ringrazio per i suggerimenti, ma avevo premesso che ero e sono agli inizi e non sono preparata come voi.
    Seguirò il manuale come da voi riportato, anche se avevo trovato lo stesso link, ma non avevo capito molto.
    Per quanto riguarda l'uso di DATADIFF avevo fatto dei tentativi e sbaglierò ancora la sintassi, ma non riesco a risolvere il quesito.
    Mentre per quanto riguarda la richiesta di trovare il valore facendo apparire una casella di testo dove scrivere e quindi immettendo da tastiera il nome da ricercare....non ho capito come fare, poiché nel link riportato spiega l'uso del WHERE, ma non quanto richiesto.
  • Re: Postgresql - query e tipo dati

    1) se ho letto bene DATEDIFF non c'è per PostgreSQL, si usano funzioni alternative.
    2) l'ultima tua domanda è troppo vaga, mancano informazioni.
  • Re: Postgresql - query e tipo dati

    Ringraziando sempre per la disponibilità, vorrei sapere per è possibile realizzare la query in postgres, come in allegato.
    Vorrei creare, se possibile, una maschera di immissione di un campo da ricercare.
    Allegati:
    14909_eace601da403512e90649bc2e6590075.jpg
    14909_eace601da403512e90649bc2e6590075.jpg
  • Re: Postgresql - query e tipo dati

    Dici di essere agli inizi, ma sei anche poca attenta, continui a parlare di sintassi Access come DATEDIFF (e non DATADIFF) quando nel primo link che ti ho indicato, in PostgreSQL, la differenza in giorni si fa, ad esempio, con DATE_PART.
    Inoltre cerchi di effettuare un passaggio uno ad uno fra Access e PostgreSQL quando sono prodotti diversi
    In Access hai tutto integrato mentre con PostgreSQL (essendo disponibile per diversi sistemi operativi) hai differenti componenti che entrano in gioco (come: linguaggi di programmazione, interfacce, sistemi di sviluppo, ecc.).
    Ad esempio se fai una ricerca ti rendi conto dei vari componenti disponibili, qui di seguito ne sono riportati alcuni:
    https://en.wikipedia.org/wiki/PostgreSQ
    https://wiki.postgresql.org/wiki/PostgreSQL_Client
    https://wiki.postgresql.org/wiki/Community_Guide_to_PostgreSQL_GUI_Tools
    https://pgdash.io/blog/postgres-gui-tools.htm
    In conclusione, invece di procedere cercando di fare un porting da Access a PostgreSQL ti consiglio di acquisire un manuale (sugli argomenti, del DBMS, a cui sei interessato) e seguirlo.
Devi accedere o registrarti per scrivere nel forum
6 risposte