Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,509

    [SQl] Union - Unire due query

    Salve,
    ho una tabella con due campi
    mi servirebbe estrarre questi due campi
    dove il valore è diverso da una stringa vuota

    faccio due queru di appoggio

    q1=select campo1 as c1 from tab1 where campo1<>''
    q2=select campo1 as c1 from tab1 where campo1<>''

    le due query prese singolarmente mi danno ciò che volgio ottenere

    quando provo a fare

    select c1 from q1
    UNION
    select C1 from q2

    è come se ottenessi una distinct della select globale
    cioè solo un singolo valore non ripetuto

    come risolvo
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  2. #2
    Utente di HTML.it L'avatar di mariox
    Registrato dal
    Nov 2006
    Messaggi
    837
    scusa qual'è la seconda query?

  3. #3
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,509
    la seconda riga ho scritto due volte q1
    vorrei capire perchè il risultato generato è come se fosse una distinct
    insomma a me deve ripetere i valori
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  4. #4
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,509
    penso di aver risolto ma vorrei capire se quello che ho capito è giusto.

    se uso UNION è come se dicessi che volgio una distinct
    se uso UNION ALL allora mi visualizza tutti i rusltati delle due query
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  5. #5
    Utente di HTML.it L'avatar di mariox
    Registrato dal
    Nov 2006
    Messaggi
    837
    Originariamente inviato da ciro78
    la seconda riga ho scritto due volte q1
    vorrei capire perchè il risultato generato è come se fosse una distinct
    insomma a me deve ripetere i valori
    :master:

    se devi estrarre dei valori dalla stessa tabella con due campi diversi dalla stringa vuota, puoi fare così:
    Codice PHP:
    $q1="select * from tab1 where campo1 != ' ' AND campo2 != ' ' "

  6. #6
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,509
    se facessi come dici mi estraerebbe dalla tabella una riga in cui entrambi i campi sono divesri dalla stringa vuota
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  7. #7
    Originariamente inviato da ciro78
    penso di aver risolto ma vorrei capire se quello che ho capito è giusto.

    se uso UNION è come se dicessi che volgio una distinct
    se uso UNION ALL allora mi visualizza tutti i rusltati delle due query
    è esattamente questo il problema devi utilizzare union all altrimenti ti accorpa eventuali doppioni

    (che alla fin fine non hanno molto senso :P)

    cmq se vuoi distinguere i due gruppi di risultati ...

    SELECT 'Query#1' AS identificatore, campo1 AS c1 FROM tab1 WHERE NOT campo1 = ''
    UNION ALL
    SELECT 'Query#2' AS identificatore, campo1 AS c1 FROM tab1 WHERE NOT campo1 = ''

    comunque le due query sono ugurali

    hai sbagliato a postare?

  8. #8
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,509
    grazie per la conferma daniele.

    si , dovevo scrivere campo2 nella seconda query

    mi angoscia aver speso per un manulae di php 60 euri che mi costringa a vedere certe cose sul web

    ciao e buon fine settimana
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


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.