sql >> Databasteknik >  >> RDS >> Mysql

Kartläggning av det valda värdet i MySQL

Du bör ändra datastrukturen för dina nuvarande tabeller. Men för din nuvarande datastruktur kan du använda den här knepiga frågan (förutsatt mönstret table_1.choice är alltid 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);

Utdata:

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

Se denna SQLFiddle



  1. Hur parallella planer startar – del 1

  2. mysqlworkbench ger versionsfel vid export av databas

  3. Viloläge tvinga tidsstämpel för att bestå/ladda som UTC

  4. Hur man beräknar ett absolut värde i SQL