最新消息:文章中包含代码时,请遵守代码高亮规范!

sql让你的查询变得更简单【原创】

MySQL 祝, 毕亮 1429浏览 1评论

小编最近开发的一些项目中,遇到很多奇葩的问题,最多的问题也就是对数据库的查询操作问题了,现在列举一些开发中遇到的sql

  1. 查询时间,毋庸置疑,每个程序中都会涉及的一些问题, 比如查询今天的数据统计:

    SELECT COUNT(sign_id) FROM table WHERE DATE_FORMAT(sign_at, ‘%Y-%m-%d’) = DATE_FORMAT(DATE(NOW()), ‘%Y-%m-%d’) AND id =XX;

    这条sql语句就是用来统计今天的一些数据的;

    SELECT COUNT(id) FROM contacts_view WHERE created_at >= ( CURDATE() – INTERVAL 15 DAY )

    这条sql语句就是用来统计15天的一些数据的;一次类推 3天, 5天, 9天;
    类似还有

  2. SELECT * FROM 表 WHERE datediff(month,[dateadd],getdate())=0
    查询本月的记录等等;
  3. 查询附近的人,一直以来对微信的附近的人比较好奇,今天也碰到这方面的问题,在师傅(主管)的帮助下找到这条语句.

    SELECT user_id, ( 6731 * acos( cos( radians($lat) ) * cos( radians( lat ) ) * cos( radians( lng ) – radians($lng) ) + sin( radians($lat) ) * sin( radians( lat ) ) ) ) AS distance FROM user WHERE user_id != ? AND status = 1 AND lng IS NOT NULL AND lat IS NOT NULL ORDER BY distance
    这条语句就轻松地解决了附近的人的问题,其中主要依赖的还是语句中的经纬度.来查找的;

  4. 正则表达式在php, js等中都是非常常见的一个表达式.我们可以用正则表达式来检验手机号码,身份证号码,邮箱等功能,其实sql语句也是可以实现正则匹配来达到查询效果的.sql语句中的正则匹配符号为”REGEXP “, 其实类似于sql中的like.
    例如:
    SELECT name FROM user WHERE name REGEXP ‘galen’;
    查询表中所有名字
    包含galen的所有用户,是不是要比like好用多了呢!好了今天小编对这次项目的关于遇到的sql的问题进行了一些总结,希望能帮助到大家。也希望大家可以一起合作交流.提升技术

转载时请注明出处及相应链接,本文永久地址:https://blog.yayuanzi.com/18776.html


pay_weixin
pay_weixin
微信打赏
pay_weixin
支付宝打赏
感谢您对作者Galen的打赏,我们会更加努力!    如果您想成为作者,请点我

发表我的评论
取消评论

表情

网友最新评论 (1)

  1. 博主有没有考虑过效率问题?
    Terry2016-12-26 14:37 回复