如何从数据库中查找最近的一条手机验证码
来源:互联网 发布:中小企业网络拓扑图 编辑:程序博客网 时间:2024/05/29 16:40
一般web开发处理手机验证码功能时,会把验证码存放数据库。因为同一个手机可能会多次接收到验证码,所以数据库中可能存在同一个手机号的多条记录。
这个时候往往有个需求是取出最近的那条记录。
方法很多,比如可以用序列作为主键,然后用max去最大的序列号。还有一种方法是记录插入时间字段,取出时根据时间找最新的一条记录。这里要说的就是这种方法。
假设数据表名为tb_phone_code,没有主键,三个字段,手机号,验证码,插入时间
如上图,同一个手机号有多条验证码,时间不同,如果以手机号为条件查询,会找到多条记录,如果只要最新的一条,sql语句如下:
select y2.* from tb_phone_code y2 inner join (select max(INSERT_TIME) y from tb_phone_code where PHONE = '159********') tb2 on y2.insert_time = tb2.y where y2.phone='159********';
我把手机号屏蔽掉了。解释下这条语句。可以拆分下,内层有个sql:
select max(INSERT_TIME) y from tb_phone_code where PHONE = '159********'
这句是用手机号为条件,找时间最近的记录,返回INSERT_TIME字段。然后给它起个别名叫tb2,接着用这个tb2和外层的sql做个inner join。
外层的sql,筛选条件是手机号和内层sql筛选出来的时间。
0 0
- 如何从数据库中查找最近的一条手机验证码
- SQL数据库group by的用法--从相同记录中查找任意一条记录
- mysql如何查询最近的一条记录
- 从数据库中随机抽取一条记录的SQL语句
- 从数据库中随机抽取一条记录的SQL语句
- 如何随机的从mysql表中取出一条记录?
- 如何随机的从mysql表中取出一条记录?
- 从数据库中提取新闻的上一条,下一条的sql语句
- 如何查询数据库中重复记录的一条记录
- 从数据库中随机抽取一条记录
- 如何从开始菜单中去掉【最近使用的文档】项
- 数据库中如何获取上一条..下一条..首尾记录
- Android数据库中查找一条数据使用的方法 query详解
- 自己的笔记___摘自别人(Android数据库中查找一条数据 query方法详解)
- Android数据库中查找一条数据 query方法详解
- ROW_NUMBER() 取多条反馈记录中,日期最近的一条数据
- 从aud$ 中查找锁住数据库用户的IP
- 最近在研究验证码的识别,学习中...
- MP-BIOS bug: 8254 timer not connected to IO-APIC
- oracle搜集
- spring MVC 启动过程详解
- 【BLE】CC2541之通过RSSI测距
- Java 开发环境配置
- 如何从数据库中查找最近的一条手机验证码
- 在js的function中动态传递字符串类型参数
- JSP之EL表达式和JSTL标签库
- 生成器 - python
- ARM协处理器介绍
- 密码学基础概念(一)
- oled+w25x16+vs1003编程经验
- Elastalert-基于Elasticsearch层面的监控告警框架
- Android okhttp3 进行socket connect&poll的底层实现跟踪