Saluto al FORUM e prima richiesta di aiuto. :)

di il
6 risposte

Saluto al FORUM e prima richiesta di aiuto. :)

Buongiorno mi chiamo Paolo e sono appena arrivato in questo gruppo.
Innanzitutto un saluto a tutti i partecipanti.
Sono un neofita di SQl e utilizzando BASE ho iniziato a prenderci familiarità.
Ho un problema e spero che qualcuno di voi possa aiutarmi a risolverlo.
Ho creato il database "TurniMissioni.odb" e una tabella "missioni" con 8 campi (idMissione,CodiceDenominazioneLuogo, dataMissione, tipoMissione, perContoDi, incaricato, aiuto, tipoIncarico) che ho popolato con i dati in mio possesso.
Per estrarre i dati delle "sedi" dove io ho già lavorato, ho impostato la seguente query "Ricerca sedi visitate SABELLA PAOLO":
----
SELECT "CodiceDenominazioneLuogo", "incaricato"
FROM "missioni"
GROUP BY "CodiceDenominazioneLuogo", "incaricato"
HAVING (("CodiceDenominazioneLuogo" LIKE '0%' AND "incaricato" = 'SABELLA PAOLO'))
ORDER BY "CodiceDenominazioneLuogo" ASC
---
che funziona perfettamente.
Volendo conoscere anche le "sedi" dove io non sono ancora stato, invece, ho impostato quest'altra query "Ricerca sedi NON visitate SABELLA PAOLO":
---
SELECT "CodiceDenominazioneLuogo", "incaricato"
FROM "missioni"
GROUP BY "CodiceDenominazioneLuogo", "incaricato"
HAVING (("CodiceDenominazioneLuogo" LIKE '0%' AND "incaricato" <> 'SABELLA PAOLO'))
ORDER BY "CodiceDenominazioneLuogo" ASC
---
che però non restituisce il risultato sperato e mi ritorna un elenco di sedi che non corrispondono al risultato sperato e comprende anche sedi in cui io sono già stato per il semplice fatto che <> 'SABELLA PAOLO' considera anche tutti gli altri colleghi che io, invece vorrei "escludere" dalla ricerca.

Dove sbaglio?
Spero di essere stato chiaro nell'esposizione.
Grazie anticipatamente.

6 Risposte

  • Re: Saluto al FORUM e prima richiesta di aiuto. :)

    Ti invito a leggere attentamente il regolamento del forum.
    1) Il titolo non è pertinente con l'argomento proposto.
    2) In questa sezione si parla di "Progettazione database"...sono consapevole di non saperti indicare dove altrimenti avresti dovuto postare.
    3) Quando posti porzioni di codice (VBA, SQL...) abbi cura di cliccare sul tasto in basso "Editor completo & Anteprima", selezionare il testo-codice, quindi clicchi sul tasto in alto </> (codice) per farlo apparire poi con i tipici caratteri monotype più familiari ai programmatori.

    Ho inviato una segnalazione ai moderatori per sistemare un po' tutte queste cose.
    Da parte mia, non conosco l'applicazione BASE, non sono in grado di aiutarti.
  • Re: Saluto al FORUM e prima richiesta di aiuto. :)

    Ciao,
    aggiungo a quando detto dall'utente che ti ha risposto:
    - In questo forum non abbiamo una sezione per Base che immagino stia per LibreOffice Base.
    Detto questo se ne può discurere, le query sono pur sempre query.
    - Hai inviato uno screenshot con nomi e cognomi di persone che ho visto bene di eliminare. Non so se sono nomi veri o di fantasia e questo è un forum pubblico.
    Se vuoi postare screenshot o tabelle devi prima epurarli di dati personali presunti o tali. Anche se dichiarati come di test noi li cancelliamo per sicurezza
  • Re: Saluto al FORUM e prima richiesta di aiuto. :)

    Nemmeno io conosco BASE ma proverei una query di questo tipo:
    SELECT "CodiceDenominazioneLuogo", "incaricato"
    FROM "missioni"
    WHERE "CodiceDenominazioneLuogo" LIKE '0%' AND "incaricato" <> 'SABELLA PAOLO'
    ORDER BY "CodiceDenominazioneLuogo" ASC
  • Re: Saluto al FORUM e prima richiesta di aiuto. :)

    Grazie per il supporto e i suggerimenti.
    x Sgrubak
    Il codice SQL da te suggerito mi restituisce tutti i centri dove l'incaricato non è SABELLA PAOLO mentre io vorrei conoscere solo quelli in cui SABELLA PAOLO non è mai stato.
    Grazie comunque
  • Re: Saluto al FORUM e prima richiesta di aiuto. :)

    E da quale campo si sa che uno non c'è stato?
  • Re: Saluto al FORUM e prima richiesta di aiuto. :)

    PAOLOSABELLA ha scritto:


    io vorrei conoscere solo quelli in cui SABELLA PAOLO non è mai stato.
    E allora devi annidare una query nella WHERE.
    [Code]SELECT DISTINCT "CodiceDenominazioneLuogo" FROM "missioni" WHERE "CodiceDenominazioneLuogo" NOT IN (SELECT "CodiceDenominazioneLuogo" FROM "missioni" WHERE "CodiceDenominazioneLuogo" LIKE '0%' AND "incaricato" <> 'SABELLA PAOLO' Ovviamente se hai una tabella che organizza il campo "CodiceDenominazioneMissione" in FK, riesci ad essere più preciso. Così prendi solo le denominazioni presenti in tabella "missioni" in cui non sei stato.
Devi accedere o registrarti per scrivere nel forum
6 risposte