Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente bannato
    Registrato dal
    Nov 2011
    Messaggi
    150

    [mysql] come si fa il contrario... del join?

    Date due tabelle
    pippo e pluto, con una chiave
    pippo.chiave=pluto.chiave, come trovo tutti gli elementi di pippo che NON corrispondono a quelli di pluto?

    Qualcosa simile a

    select *from pippo where
    pippo.chiave not in (select chiave from pluto)

    ?

    Ho fatto qualche prova ma, nonostante gli indici, gira pianissimo

    Qui ho trovato qualcosa
    http://explainextended.com/2009/09/1...is-null-mysql/

    e col traduttore di google qualcosina ho "captato"... ma per la verità non ci ho capito proprio tutto

  2. #2
    Utente di HTML.it L'avatar di Joe Taras
    Registrato dal
    Nov 2003
    residenza
    Taranto
    Messaggi
    955

    Re: [mysql] come si fa il contrario... del join?

    Originariamente inviato da lanciafiamme
    Date due tabelle
    pippo e pluto, con una chiave
    pippo.chiave=pluto.chiave, come trovo tutti gli elementi di pippo che NON corrispondono a quelli di pluto?

    Qualcosa simile a

    select *from pippo where
    pippo.chiave not in (select chiave from pluto)

    ?

    Ho fatto qualche prova ma, nonostante gli indici, gira pianissimo

    Qui ho trovato qualcosa
    http://explainextended.com/2009/09/1...is-null-mysql/

    e col traduttore di google qualcosina ho "captato"... ma per la verità non ci ho capito proprio tutto
    Per estrarre tutti i record di una tabella che non sono presenti nell'altra, innanzitutto una delle due deve avere una fk all'altra.

    La query sarà:
    SELECT * FROM tabella1
    WHERE NOT EXISTS(SELECT 'X' FROM tabella2 WHERE tabella2.fk_tabella1 = tabella1.id)

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.