Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    Mysql select da 2 tabelle

    ciao amici, io ho 2 tabelle, praticamente con quasi la stessa struttura

    la tabella clienti, e la tabella clienti_due

    ho necessità di prendere sia il nome_clienti e il nome_clienti_due, ordinandoli come se fosse un unica tabella, ma non riesco a trovare la sintassi giusta, sapete aiutarmi?


    grazie mille in anticipo

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    select nome from clienti
    union all
    select nome from clienti_due
    order by nome

  3. #3
    Originariamente inviato da nicola75ss
    select nome from clienti
    union all
    select nome from clienti_due
    order by nome
    grazie, e su questa query posso fare un LEFT JOIN?

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    E' più facile che ti ricordi cosa puoi fare e cosa no se provi tu stesso. Comunque sì.

  5. #5
    Originariamente inviato da nicola75ss
    E' più facile che ti ricordi cosa puoi fare e cosa no se provi tu stesso. Comunque sì.
    perche non riesco a farlo,

    ho queste 2 tabelle da unire, su cui fare una verifica per NOME su un altra tabella, e avere il count dei record trovati per NOME,
    la query con LEFT JOIN è questa

    SELECT u.id_utente,
    count(f.idutente_frase) AS NUMERO
    FROM utenti as u
    left JOIN frasi as f ON u.id_utente= f.idutente_frase
    group by u.id_utente

    solo che ID UTENTE e appunto delle 2 tabelle da unire , non riesco a farloo


    grazie amici

  6. #6
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Non ho capito. La tabella che generi tramite l'union quale sarebbe, utenti o frasi?

  7. #7
    Originariamente inviato da nicola75ss
    Non ho capito. La tabella che generi tramite l'union quale sarebbe, utenti o frasi?
    riformulo l' esempio,

    esiste una tabella con le FRASI con un indice che si collega all' ID_UTENTE, sia la tabella UTENTI_A che la tabella UTENTI_B , quindi bisogna unire la tabella_a e la tabella_b e fare il COUNT del numero di frasi per ogni ID usando il left JOIN, come nell esempio che ho scritto. spero di essere stato chiaro

  8. #8
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    codice:
    select u.id_utente,count(f.idutente_frase) as NUMERO from (
    select id_utente from utenti_a
    union all
    select id_utente from utenti_b
    ) as u
    left join frasi as f on u.id_utente= f.idutente_frase
    group by u.id_utente

  9. #9
    Originariamente inviato da nicola75ss
    codice:
    select u.id_utente,count(f.idutente_frase) as NUMERO from (
    select id_utente from utenti_a
    union all
    select id_utente from utenti_b
    ) as u
    left join frasi as f on u.id_utente= f.idutente_frase
    group by u.id_utente

    Grazie mille, sapresti linkarmi un sito dove spieghino l uso di AS ... come hai usato tu, non ho mai capito

  10. #10
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Primo link trovato con google

    http://dev.mysql.com/doc/refman/5.0/...ith-alias.html

    Non c'è molto da dire sugli alias.
    La parola as può anche essere omessa, dipende dalle abitudini.

    Sono semplicemente dei nomi alternativi che è possibile dare a un campo o a una tabella per fare riferimento a essi in modo più conciso, oppure dei nomi che è obbligatorio assegnare quando ci si riferisce a una tabella derivata come in questo caso frutto di una union. In quest'ultimo caso mysql non manca di avvisarti dell'eventuale dimenticanza.

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.