Mysql
 sql >> Baza danych >  >> RDS >> Mysql

łącz tabele i transponuj kolumny i wiersze

Czy możesz zmienić schemat tabeli? Bo ta pierwsza tabela, survey_1, jest lepiej napisana z jednym wierszem na odpowiedź i całym kluczem drugiej tabeli na wiersz. W ten sposób (dodaj własne indeksy)

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

Wtedy dane byłyby

------------------------------------------
| 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"   |
------------------------------------------

Praca z nim będzie znacznie łatwiejsza i ogólnie lepszy projekt.

Oto jak by to wyglądało http://sqlfiddle.com/#!2/4f1ca/2



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak uzyskać wymiar zmiennej DECLAREd w SP?

  2. Jak wyłączyć pamięć podręczną zapytań MySQL podczas korzystania z SQLAlchemy?

  3. Zapytanie MYSQL WHERE IN vs OR

  4. Jak testować w każdym z kilku stołów i pomiędzy nimi?

  5. Lokalna replika bazy danych RDS