sql >> Databasteknik >  >> RDS >> Mysql

Frågar du en sträng från int-kolumnen?

Ett alternativ är att CAST 112 till CHAR för att få en ordentlig matchning:

WHERE CAST(id AS CHAR(12)) = '112abcdefg'

12 i CHAR är en gissning; den bör vara tillräckligt stor för ditt största id .

Det kommer förmodligen att döda alla chanser till optimering, så ett annat alternativ (även om jag inte är 100 % säker på) är att använda en BINARY jämförelse. Jag har provat detta med några olika värden och det fungerar:

WHERE BINARY id = '112abcdefg'


  1. mybatis generator Kolumnnamnsmönster kan inte vara NULL eller tomt

  2. Kan jag räkna sessioner för att bestämma antalet personer online?

  3. Hur ser jag aktiva SQL Server-anslutningar?

  4. arbeta med json i oracle