Mysql
 sql >> база данни >  >> RDS >> Mysql

Защо find_in_set работи, но клауза IN

IN приема списък или параметри за търсене, FIND_IN_SET приема параметър на низ, съдържащ списък, разделен със запетая:

SELECT  1 IN (1, 2, 3, 4)

SELECT  FIND_IN_SET(1, '1,2,3,4')

Ако се опитате да приложите IN към низ, разделен със запетая, той ще го третира като един параметър и ще му съвпада като цяло:

SELECT  1 IN ('1,2,3,4')

Разбира се, низът '1' не е равно на низа '1,2,3,4' така че заявката по-горе връща false.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да получите името на супервайзера вместо UserID + INNER JOIN в MYSQL

  2. Моите MySQL сървърни връзки криптирани и безопасни ли са?

  3. Вземете цялата Дата на месеца заедно с данните от таблицата

  4. Някакъв начин да изберете, без да причинявате заключване в MySQL?

  5. com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Неизправност на комуникационната връзка