sql >> Databáze >  >> RDS >> Mysql

Proč find_in_set funguje, ale klauzule IN

IN přijímá seznam nebo parametry k vyhledávání, FIND_IN_SET přijímá parametr řetězce obsahující seznam oddělený čárkami:

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

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

Pokud se pokusíte použít IN na řetězec oddělený čárkami, bude s ním zacházet jako s jedním parametrem a bude se shodovat jako s celkem:

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

Samozřejmě řetězec '1' se nerovná řetězci '1,2,3,4' takže dotaz výše vrátí hodnotu false.



  1. Úvod do SQL Grouping a Totaling

  2. Získat MySQL Workbench přístup pro administraci?

  3. jaký je správný způsob převodu mezi datem mysql a časovým razítkem pythonu?

  4. Funkce SYSDATE v Oracle