`

Mysql_日期增减问题

 
阅读更多

select curdate();                       #获取当前日期

select last_day(curdate());                    #获取当月最后一天。

select DATE_ADD(curdate(),interval -day(curdate())+1 day);   #获取本月第一天

select date_add(curdate()-day(curdate())+1,interval 1 month); # 获取下个月的第一天

select date_add(curdate()-day(curdate())+1,interval -1 month); # 获取上个月的第一天

 

但是:由于各个月份天数有 28/29、30、31不等,故使用 -day(:stocktime)+1来获取上月或下月1号可能会出现问题

如下:

DATE_ADD(DATE_ADD(:stocktime,interval -1 month),interval -day(:stocktime)+1 day)

CONCAT(DATE_FORMAT(DATE_ADD(:stocktime,interval -1 month),'%y-%m'),'-01')

应改为:

DATE_ADD(:stocktime,interval -day(:stocktime)+1 day)

CONCAT(DATE_FORMAT(:stocktime,'%y-%m'),'-01')

分享到:
评论

相关推荐

    mysql 日期操作 增减天数、时间转换、时间戳.docx

    "MySQL 日期操作详解" MySQL 日期操作是一种常用的数据库操作,用于处理日期和时间相关的数据。在 MySQL 中,提供了多种日期和时间函数,用于获取当前日期和时间、计算日期和时间之间的差异、转换日期和时间格式等...

    MySQL日期加减函数详解

    本文将深入探讨MySQL中的日期加减函数,包括`addtime()`、`adddate()`、`date_add()`、`subtime()`、`subdate()`和`date_sub()`,这些函数可以帮助我们方便地对日期和时间进行增减操作。 1. `addtime()` 函数: 这...

    mysql的数据库书籍

    4. **数据类型**:MySQL支持多种数据类型,如数值类型(整数、浮点数)、字符串类型(字符、变长字符、文本)、日期和时间类型(日期、时间、日期时间)、二进制类型(BLOB、VARBINARY)等。 5. **数据库设计**:在...

    c#添加,修改,删除windows用户,mysql资料

    在处理日期和时间函数方面,MySQL提供了丰富的日期运算函数,如`DATE_ADD()`, `DATE_SUB()`, `NOW()`等,它们在处理日期字段的增减、比较和计算时非常有用。在C#中,可以使用`DateTime`类的方法和属性来操作日期和...

    mysql的备份和恢复基础知识(全量备份和增量备份)-详细笔记文档总结

    2. 备份时切换用 -F 参数刷新 bin-log 日志使用好处是:当数据库被删除后,在恢复数据全备时候,全备之前的 bin-log 日志就可以不考虑了,全备里面已经有了这些语句,而只需恢复全备后,将全备日期后面的新的 bin-...

    java日常处理函数

    例如,可以使用`plusDays()`, `minusHours()`, `format()`等方法进行日期的增减和格式化。 总的来说,无论是MySQL、Oracle还是Java,日期和时间的处理都是通过一系列特定的函数和类来完成的。掌握这些函数和类的...

    基于myeclipse+mysql游币系统

    【游币系统设计与实现——基于MyEclipse与MySQL】 游币系统是许多在线游戏、社交平台以及电子商务网站中常见的虚拟货币系统,它允许用户通过购买、赠送或完成特定任务来获取并消耗虚拟货币,以增强用户体验和促进...

    WMS_TableV1.0_表结构_wms_

    1. 数据库模型:WMS数据库通常采用关系型数据库模型,如MySQL、Oracle或SQL Server等,这是因为关系型数据库能够有效地处理复杂的事务处理和数据关联,满足WMS的高并发需求。 2. 规范化设计:为了减少数据冗余和...

    数据库设计,用于班级管理系统

    - 加扣分情况(代价——cost):记录积分增减。 11. **班费(finance_records)**: - 班级ID:关联班费记录所属的班级。 - 财政支出(change_value):记录班费的支出金额。 - 班费使用情况(title、content)...

    SQL常用库函数

    日期增减 DATE_ADD()/DATE_SUB()/DATEADD() DATE_ADD() 和 DATE_SUB() 函数用于增加或减少日期。例如: ```sql SELECT DATE_ADD(NOW(), INTERVAL 1 DAY); ``` 在SQL Server中,使用 DATEADD() 函数。例如: ```...

    程序员的SQL金典.rar

     5.3.4 日期增减  5.3.5 计算日期差额  5.3.6 计算一个日期是星期几  5.3.7 取得日期的指定部分  5.4 其他函数  5.4.1 类型转换  5.4.2 空值处理  5.4.3 CASE函数  5.5 各数据库系统独有函数  5.5.1 MySQL...

    采购管理系统源码+项目说明+数据库(管理采购合同、供应商、采购单、发货单、返厂单等).zip

    生成时需要把mybatis-generator-core-1.3.1.jar、mysql-connector-java-5.1.24-bin.jar、config_privilege.xml放到一个目录下,生成的相关类和XML会放置到CreateResult文件夹下面。 jar下载地址:...

    固定资产管理系统源代码

    2. **资产增减**:支持新增资产、资产报废或转让,同时自动更新资产总值和变动记录。 3. **借用归还**:提供资产借用和归还的流程管理,确保资产的合理使用和追踪。 4. **保养维修**:记录资产的保养周期和维修...

    雇员信息管理系统java课程设计.doc

    【雇员信息管理系统Java课程设计】是一份详细阐述如何利用Java编程语言设计和实现雇员信息管理系统的课程设计报告。...此外,该设计还锻炼了团队协作和问题解决的能力,对于提升学生的综合技能具有重要意义。

    自动取款机登陆系统(含数据库)

    存款和取款功能涉及到资金的增减,因此需要严谨的计算和事务处理。在C#中,可以使用ADO.NET来连接和操作Access数据库,执行相应的SQL语句。事务管理可以确保即使在网络不稳定或出现错误的情况下,也能保持数据的一致...

    个人资产管理系统

    在这个系统中,我们需要设计合理的数据库表结构,例如“资产表”(包含资产名称、类型、购买日期、价值等字段),“交易记录表”(记录资产的增减变动),以及可能的“用户表”(存储用户信息,确保数据的安全性)。...

    2021-2022计算机二级等级考试试题及答案No.17096.docx

    25. 日期型数据可以与整数相加减,表示日期的增减。 26. 在C/C++中,选项B不能正确地对字符串进行赋值,因为指针s不能直接赋值为字符串。 27. Access中,创建表之间的关系是数据库设计的一部分,用于建立实体间的...

    java课程设计:日历记事本。

    - 实现年份、月份的增减功能。 - 当用户点击某个日期时,可以在记事本部分记录该日期的信息。 **2.2.3 记事本部分** - 用户可以在文本编辑区输入内容,并保存到对应的文件中。 - 支持查看、编辑和删除已有记录的...

Global site tag (gtag.js) - Google Analytics