mysql 中 in的用法

mysql 中 in的用法,第1张

1.in 后面是记录集,如:

select  *  from  table  where   uname  in(select  uname  from  user)

2.in 后面是字符串,如:

select  *  from  table  where   uname  in('aaa',bbb','ccc','ddd','eee',ffff'')

注意:这里一定要将字符串用单引号'' 标注起来;

3.in 后面是数组,用如下方法,请参考:

//$pieces是含数据的数组

for($i=0$i<count($pieces)$i++){

$uname=$uname."'".$pieces[$i]."',"

}

$the_uname ="uname in(".$uname."'')"

select  *  from  table  where    ".$the_uname." 

备注:这种方法的原理其实很简单,二就是把数组编程上面“第2种情况”的形式。

mysql的in条件查询,是括号里拼接逗号相隔的字串,这个字长里的个数还有限制,网上的说法是1000个,为了避免超出该范围,可专门封装一个方法 1.使用exists写法替代in写法,exists写法是使用条件查询替代in写法里的一长串字串,这个有时候没法使用,比如使用第三方接口查学校一年级2千个学生的考试成绩,你只知道这些学生的id,没有更多的关联条件 2.使用or的写法,将in条件过长的字串拆开,mysql支持以下写法: 方法封装: 测试效果:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8567973.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-18
下一篇 2023-04-18

发表评论

登录后才能评论

评论列表(0条)

保存