Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    [SQL] NOT IN è giusto in questo modo?

    Buon giorno, vorrei sapere se la clausola NOT IN, nella struttura della select che posto, è corretta oppure no.

    codice:
    select count(*) from PROVA_CANONE where (Campo3 = 'B' and Campo4 = '5') NOT IN (Campo5 and Campo6)
    In pratica, vorrei che: i valori 'B' del campo3 e il valore '5' del campo4 non siano presenti nel campo5 e campo6

    E' possibile fare una cosa del genere?
    Grazie mille...

  2. #2
    Utente di HTML.it L'avatar di Lucada
    Registrato dal
    Apr 2005
    Messaggi
    176
    Umh... io la ho sempre utilizzata diversamente... e cioè:

    codice:
    select count(*) as Totale from tabella where campo3 ='x' and campo4='y' and campo 5 not in (select * from tabella where campo 2 = 'z')
    Il vero io è quello che tu sei, non quello che gli altri hanno detto di te. [Paulo Coelho]

  3. #3
    ho fatto come dici ma mi restituisce questo errore:
    Operand should contain 1 column(s)

    e comunque, potresti spiegarmela, per favore?nel senso, da quella che mi hai postato, dato che sono ignorante , non vedo una similitudine con la mia postata...sicuramente mi sbaglio..!!

    grazie....

  4. #4
    Utente di HTML.it L'avatar di Lucada
    Registrato dal
    Apr 2005
    Messaggi
    176
    Posta il codice...
    Il vero io è quello che tu sei, non quello che gli altri hanno detto di te. [Paulo Coelho]

  5. #5
    ho dimenticato di dirti/vi, che i campi (Campo3 e Campo4) hanno, il primo, valore B ed il secondo, valore 5.

    Questi due valori, è come se li dovessi mettere insieme es:'B5' per poter effettuare la ricerca nei campi (Campo5 e Campo6) che hanno valori 'B5'.

    Al momento ho effettuato questo tipo di select ma non sò se realmente mi funge:
    codice:
    SELECT * FROM tabella WHERE (Campo3='B',Campo4='5') =
    	(SELECT Campo5, Campo6 FROM tabella WHERE Campo5 = 'B5')
    grazie ancora...

  6. #6
    Utente di HTML.it L'avatar di Lucada
    Registrato dal
    Apr 2005
    Messaggi
    176
    Ho capito... beh allora non so se puoi fare direttamente tutto in una select... di conseguenza ti consiglio di salvarti e fare una seconda select... che è la cosa più banale.

    Ovviamente se c'è maniera di farlo tutto in una select, ne sarei grato se qualcuno la postasse.

    codice:
    $sql = SELECT * FROM tabella WHERE Campo3='B' and Campo4='5'
    $sql2 = mysql_query($sql,$conn) or die('Errore durante la query: '. mysql_error());
    $sql3= mysql_fetch_array($sql2);
    
    variabile = campo3 e campo4
    
    $sql4= SELECT Campo5, Campo6 FROM tabella WHERE Campo5 = variabile
    Il vero io è quello che tu sei, non quello che gli altri hanno detto di te. [Paulo Coelho]

  7. #7
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    select * from tabella where concat(campo3,campo4) = 'b5' and campo5 = 'b5'

    Non è che abbia capito molto, ho riletto il tutto un paio di volte e in ogni post mi è sembrato di leggere una richiesta diversa.

  8. #8
    si, infatti, mi scuso...ma non avendo molta dimestichezza con questo splendido linguaggio, non so come spiegarmi...e spiegarvi!!
    Adesso provo quanto postato sperando che funzioni...
    Tenetemi d'occhio vi prego...Grazie mille...!!!!

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 © 2025 vBulletin Solutions, Inc. All rights reserved.