+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 4 su 4

riga su condizioni multipli

  1. #1
    aalesssio non è in linea Novello
    Ciao a tutti,
    ho una tabella con 3 campi: nome cliente, tipo contratto e stato contratto.
    Ogni cliente può avere più contratti di tipo diverso (A e B) i quali possono essere (stato=) open o closed (O o C).
    Dunque vorrei scrivere una query che mi mostri i clienti che abbiano i contratti in stato open. Però nel caso siano aperti sia A e che B vorrei mostrare soltanto la riga con il contratto di tipo A (perchè ha più priorità).

    Esempio:
    PIPPO | A | O
    PIPPO | B | O
    CICCIO| A | O
    PEPPE | B | C
    RINO | B | O
    vorrei una query che mi mostri le seguenti righe:
    PIPPO | A | O
    CICCIO| A | O
    RINO | B | O

    ho provato ad utilizzare IIF ma non riesco proprio...

    grazie in anticipo!!

  2. #2
    Sgrubak non è in linea Scribacchino
    Potresti selezionare tutti i clienti che hanno un contratto A aperto, e poi con [UNION ALL], accodare tutti i clienti che hanno un B aperto ma non un A aperto...

  3. #3
    aalesssio non è in linea Novello
    Si, fin li ci sono.
    Ma come traduci in SQL la seconda parte:B open e A closed? Un semplice AND in WHERE ? In questo modo non mi pare che funzioni...

  4. #4
    Sgrubak non è in linea Scribacchino
    Quote Originariamente inviato da aalesssio Visualizza il messaggio
    Ma come traduci in SQL la seconda parte:B open e A closed?
    Select Codice, Tipo contratto, Stato contratto
    From Tabella
    Where Tipo contratto = A
        AND Stato contratto = O
    
    UNION ALL
    
    Select Codice, Tipo contratto, Stato contratto
    From Tabella
    Where Tipo contratto = B
        AND Stato contratto = O
        AND Codice NOT IN (Select Codice From Tabella Where Tipo contratto = A AND stato contratto = O)
    
    Ovviamente devi correggere i nomi dei campi...

    Forse a livello di prestazioni può andare meglio una CTE oppure sfruttare la funzione finestra ROW_NUMBER strutturando bene la clausola OVER.

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. Risposte: 7
    Ultimo Post: 27-11-2019, 13:45
  2. Condizioni nella If
    Da mario26 nel forum Visual Basic 6
    Risposte: 1
    Ultimo Post: 12-05-2014, 13:27
  3. Lettura file di testo riga per riga
    Da roccolamann nel forum Microsoft Word
    Risposte: 8
    Ultimo Post: 24-01-2014, 15:36
  4. Leggere riga per riga TextBox e scaricarle...
    Da IAL32 nel forum Visual Basic .Net
    Risposte: 5
    Ultimo Post: 08-08-2011, 17:35
  5. Termini e Condizioni
    Da Skary nel forum Altri linguaggi e strumenti
    Risposte: 6
    Ultimo Post: 08-02-2009, 21:09