Query parent child

Soulfearor

Utente Attivo
16 Set 2014
54
0
6
Torino
www.serenagraficatorino.it
Buonasera a tutti,
ho questa tabella con i seguenti valori

id - categoria - parent
1 - primo - NULL
2 - secondo - NULL
3 - terzo - primo
4 - quarto - primo
5 - quinto - primo

Con questa query riesco a ricavare "terzo", "quarto" e "quinto"

PHP:
$query = mysqli_query($connessione, "SELECT categoria, parent FROM tabella WHERE parent != 'NULL'") or die(mysqli_error());

Se volessi anche ricavare "secondo" come posso fare?

Dovrei fare una query che mi estrae tutte le categorie che hanno un parent diverso da NULL (consideriamole sotto-categorie) e le categorie con parent NULL (consideriamole macro-categorie) che non appaiono nella colonna parent, es "secondo" ("primo" verrà escluso in questo caso).
Avete qualche idea?

Grazie, buona serata!
 
$query = mysqli_query($connessione, "SELECT categoria, parent FROM tabella WHERE parent IS NOT NULL") or die(mysqli_error());

Ciao
 
$query = mysqli_query($connessione, "SELECT categoria, parent FROM tabella WHERE parent IS NOT NULL") or die(mysqli_error());
Ciao
Ciao, intanto grazie per la risposta :)
Quello che mi hai scritto era la parte che sapevo fare, i problemi li riscontro in:
e le categorie con parent NULL (consideriamole macro-categorie) che non appaiono nella colonna parent, es "secondo" ("primo" verrà escluso in questo caso).

Sai come posso risolvere?

Buona serata
 
prova così
ciao
Codice:
SELECT 
categoria, 
parent 
FROM tabella 
WHERE parent != 'NULL'
UNION
SELECT 
categoria, 
parent 
FROM tabella mytab
WHERE parent = 'NULL'
AND categoria not in (select parent from tabella where parent = mytab.categoria)
 

Discussioni simili