mysql in 多个字段的用法

一、修改(update)

$sql = " UPDATE table_name SET status = 1,is_dispose = 1 WHERE competition_id = 10 AND user_id = 11";

如果有大批数据需要更新的话 很多人都会在php的foreach里面循环更新 如果数据量大 这样性能会下降很大,对mysql也很有压力 至造成堵塞问题。可以把以上语句改进一下。 

$sql = " UPDATE table_name SET status = 1,is_dispose = 1 WHERE(competition_id,user_id) IN( (1,30),(1,86))";

这样我们可以使用php拼接IN需要的数据 然后在扔给mysql去执行 这样只连接(操作)一次mysql数据库 大大降低了刚刚在foreach里面循环更新对mysql造成的压力

二、查询(select)

查询跟上面说的update大同小异 使用方式如下:

1.基本用法
$sql = " SELECT * FROM table_name WHERE user_id IN (600,601,602) ";

2.多个字段同时使用
$sql = " SELECT * FROM table_name WHERE (user_id,type) IN ( (568,6),(569,6),(600,8) ) ";


声明:禁止任何非法用途使用,凡因违规使用而引起的任何法律纠纷,本站概不负责。

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

精彩评论

全部回复12人评论7,777人参与