Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    16

    Unire due risultati

    Salve a tutti, descrivo il mio problema:
    ho necessita di estrapolare da due tabelle (´persone´, ´colloqui´) tutte le persone che hanno una competenza X, tirando fuori solamente quelle che non hanno mai fatto colloqui e/o se l'hanno fatto, l'hanno fatto prima di una certa data.
    I campi delle tabelle che m'interessano sono i seguenti:
    PERSONE:
    - id_persona
    - anagrafica
    - ncolloqui (numerico, indica il numero di colloqui effettuati)
    - competenze

    COLLOQUI
    - candidato (Foreign Key, contiente l' ´id_persona´)
    - data_colloquio

    La query che avevo pensato, dopo alcuni tentativi era questa:
    SELECT * FROM persone
    INNER JOIN colloqui ON colloqui.candidato = persone.id_persona
    WHERE persone.competenze LIKE '%XXXX%'
    AND (
    (persone.ncolloqui = 0)
    OR
    (persone.ncolloqui>0 AND colloqui.data <> 'xxxx/xx/xx')
    )

    Il problema è che mi estrapola solamente i dati che rispondono alla condizione
    2) (persone.ncolloqui>0 AND colloqui.data <> 'xxxx/xx/xx')
    ignornado tutti quelli che rispondono alla condizione
    1) (persone.ncolloqui = 0)

    Ora, magari il problema è banalmente risolvibile, ma francamente non mi viene in mente nulla. Ho provato a vedere le sintassi dei vari Inner Join, Left Outern Join, Select di Select, ecc.., ma non mi pare che facciano al caso mio... Voi cosa mi consigliereste?

    Io pensavo di trovare un modo per cercare prima i dati che rispondono al mio criterio 1), poi quelli del criterio 2) e unirli, ma come?

    Grazie anticipatamente e ciao!
    ...into the infinity of thoughts...

  2. #2
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    Scusa ma se metti come criterio :


    .....................
    persone.competenze like % XXXXXx % and (data < #XXXXXX# or null)

    non dovrebbe tirarti fuori tutto quello che vuoi? Se uno non ha fatto il colloquio vuol dire che la data è nulla.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.