Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Mapping des ausgewählten Werts in MySQL

Sie sollten die Datenstruktur Ihrer aktuellen Tabellen ändern. Aber für Ihre aktuelle Datenstruktur können Sie diese knifflige Abfrage verwenden (unter der Annahme des Musters von table_1.choice ist immer Item XX ):

SELECT t1.id, t2.rid, t1.qid, t1.choice, t2.question
  FROM Table1 t1
  JOIN Table2 t2
    ON RIGHT(t1.choice, LENGTH(t1.choice) - 5) 
     = LEFT(t2.question, LOCATE('.',t2.question) - 1);

Ausgabe:

| ID |  RID |  QID |  CHOICE |        QUESTION |
|----|------|------|---------|-----------------|
| 11 | 1001 | 2020 |  Item 1 |  1.I love apple |
| 12 | 1002 | 2020 |  Item 2 | 2.I love orange |
| 13 | 1003 | 2020 | Item 14 | 14.I hate lemon |

Siehe dieses SQLFiddle