mysql - SQL NOW() 和 SQL 中的 created_at 是什么意思
问题描述
我被告知要测试某人的代码,当我传递一个 json 时,它会引发以下错误
错误:找不到行
select * from otp_log where verified_at is NULL and (NOW()-created_at)<? and email_otp = ? and mobile_otp = ? 300,5581
错误:未找到任何行
当我从邮递员发送 put 请求时出现此错误
{
"signup_request_id": "36",
"email_otp": "5881"
}
现在我检查了我们的 sql 中有 otp_log 表,它包含已填充数据的 email_otp 和 mobile_otp 字段。
我使用的路由signup/verify
顾名思义就是通过 otp 来验证用户的。
所以有人可以帮我解释这到底是做什么的。就像我为什么会收到错误(一般来说)?这是什么意思(NOW()-created_at
?
解决方案
这是一个有点长的评论。
这是写条件的一种奇怪方式。我认为更容易理解为:
select *
from otp_log
where verified_at is NULL and
created_at > now() - ? and
email_otp = ? and
mobile_otp = ?
我不知道300,4906,20102
应该是什么。如果它存在于查询中,那么它将导致语法错误。否则,“未找到行”意味着它所说的:没有行符合where
条件。
推荐阅读
- python - 返回 2D 张量的每一行的 top_k 掩码 softmax
- android - 尝试将 stableIds 设置为 recyclerview 适配器时,我收到错误提示我的适配器已注册观察者
- java - 在 PHP 的上下文中理解 uWSGI
- mongodb - FeathersJS 为集合创建复合索引
- reactjs - compose HOC的单元测试
- pandas - AWS SageMaker pd.read_pickle() 不起作用,但 read_csv() 起作用?
- dart - 未来的功能不断重复
- windows - PowerShell 脚本向注册表询问是否存在密钥和真/假输出
- node.js - 如何指定我希望 Node 使用 Windows?
- python - Getting vector obtained in the last layer of CNN before softmax layer