Heim >Datenbank >MySQL-Tutorial >mysql中的 IN和FIND

mysql中的 IN和FIND

WBOY
WBOYOriginal
2016-06-07 15:02:481583Durchsuche

FIND_IN_SET( str , strlist ) 假如字符串 str 在由 N 子链组成的字符串列表 strlist 中, 则返回的范围在 1 到 N 之间 。一个字符串列表就是一个由一些被‘ , ’符号分开的自链组成的字符串。如果第一个参数是一个常数字符串,而第二个是 type SET 列,则 F

  • FIND_IN_SET(str,strlist)
假如字符串str 在由N 子链组成的字符串列表strlist 中, 则返回值的范围在 1 到 N 之间 。一个字符串列表就是一个由一些被‘,’符号分开的自链组成的字符串。如果第一个参数是一个常数字符串,而第二个是type SET列,则   FIND_IN_SET() 函数被优化,使用比特计算。如果str不在strlist 或strlist 为空字符串,则返回值为 0 。如任意一个参数为NULL,则返回值为NULL。 这个函数在第一个参数包含一个逗号(,)时将无法正常运行。 

mysql> SELECT FIND_IN_SET('b','a,b,c,d');

        -> 2

延伸用法,利用FIND_IN_set排序

eg:

$ids = '9,3,45,1,8,2,6';

$sql = "... WHERE goods_id IN('{$ids}') ORDER BY FIND_IN_SET(goods_id, '{$ids}')";

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn