Mysql
 sql >> Database >  >> RDS >> Mysql

unire tabelle e trasporre colonne e righe

Puoi cambiare lo schema della tabella? Perché quella prima tabella, survey_1 è meglio scritta con una riga per risposta e con l'intera chiave dell'altra tabella per riga. In questo modo (aggiungi i tuoi indici)

create table survey_1 (
  id int,
  token int,
  sid int,
  gid int,
  qid int,
  answer varchar(255)
)

Di quanto sarebbero i dati

------------------------------------------
| 1 | 1 | 1 | 2 | 1 | "YES"              |
| 1 | 1 | 1 | 2 | 2 | "Justin Beiber"    |
| 2 | 1 | 1 | 2 | 1 | "YES"              |
| 2 | 1 | 1 | 2 | 2 | "Britney Spears"   |
------------------------------------------

Sarà molto più facile lavorare e in generale un design migliore.

Ecco come sarebbe http://sqlfiddle.com/#!2/4f1ca/2