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人参与
  1. 1楼
    便捷摄影工作室

    好牛,已测试

    2016-02-28 12:04:01 回复
  2. 2楼
    naive

    浏览器换了无数个都看不到密码

    2017-02-23 04:06:13 回复
    • King 作者

      @naive 现在已被屏蔽。我再放上去,我的网站就被屏蔽咯

      2017-02-24 01:46:37 回复

电子邮件地址不会被公开。 必填项已用 *标注

loading