
Originariamente inviata da
giusebos
Il risultato che desidero è quasi proprio ciò che ottieni, anche se i campi testo, testo e testo dovrebbero essere titolo, img e descrizione.
Non hai molta dimestichezza con SQL. Vero ? testo, testo e testo possono essere cambiati in quello che vuoi con la parola chiave AS
codice:
select A.idgruppo, A.testo as titolo, B.testo as img, C.testo as descrizione from tab2 A
inner join tab2 B on A.idgruppo = B.idgruppo
inner join tab2 C on A.idgruppo = C.idgruppo
where A.tipo = 'titolo' and B.tipo = 'img' and C.tipo = 'desc'

Originariamente inviata da
giusebos
Ho cambiato il nome della tabella che tu hai chiamato tab2 mentre la mia si chiama tabellaA.
Il nome della tabella non è rilevante. Puoi mettere quello che vuoi dal momento in cui la query fa riferimento al nome giusto.

Originariamente inviata da
giusebos
Il risultato che ottengo è una tabella provvisoria, come posso fare per memorizzare la tabella con un nome?
Questa query mi serve per modificare un vecchio database, quindi ciò che ottengo dopo la query mi occorrebbe in modo definitivo.
La vecchia tabelle (tabellaA) non mi servirà più.
quindi per adesso davvero grazie!
Li bisogna creare una tabella che contiene i campi che vuoi e poi esegui una query che riempie la nuova tabella.
Mi sono creato una tabella di nome tab_def che contiene i campi idgruppo, titolo, img e descrizione.
codice:
insert into `tab_def` (idgruppo, titolo, img, descrizione)
select A.idgruppo, A.testo, B.testo, C.testo from tab2 A
inner join tab2 B on A.idgruppo = B.idgruppo
inner join tab2 C on A.idgruppo = C.idgruppo
where A.tipo = 'titolo' and B.tipo = 'img' and C.tipo = 'desc'
Dopo aver eseguito la query, la tabella tab_def contiene i dati seguenti :