首页 > 数据库 >mysql 实用的sql

mysql 实用的sql

时间:2023-12-07 16:36:04浏览次数:35  
标签:SUB INTERVAL MONTH 实用 CURDATE sql mysql DATE DAY

计算今日:

SELECT CURRENT_DATE();

 

计算本周一日期:

SELECT DATE_SUB(CURDATE(), INTERVAL WEEKDAY(CURDATE()) DAY);

计算本周日日期:

SELECT DATE_ADD(CURDATE(), INTERVAL 6 - WEEKDAY(CURDATE()) DAY);

 

计算本月第一天日期:

SELECT DATE_SUB(CURDATE(), INTERVAL DAY(CURDATE())-1 DAY);

计算本月最后一天日期:

SELECT DATE_SUB(DATE_ADD(DATE_SUB(CURDATE(), INTERVAL DAY(CURDATE())-1 DAY), INTERVAL 1 MONTH), INTERVAL 1 DAY);

 

计算下月第一天日期:

SELECT DATE_ADD(DATE_SUB(CURDATE(), INTERVAL DAY(CURDATE())-1 DAY), INTERVAL 1 MONTH);

计算下月最后一天日期:

SELECT DATE_SUB(DATE_ADD(DATE_SUB(CURDATE(), INTERVAL DAY(CURDATE())-1 DAY), INTERVAL 2 MONTH), INTERVAL 1 DAY);

 

计算本季度第一天日期:

SELECT DATE_SUB(DATE_SUB(CURDATE(), INTERVAL DAY(CURDATE())-1 DAY), INTERVAL CASE WHEN MOD(MONTH(CURDATE()), 3) = 1 THEN 0 WHEN MOD(MONTH(CURDATE()), 3) = 2 THEN 1 WHEN MOD(MONTH(CURDATE()), 3) = 0 THEN 2 END MONTH);

计算本季度最后一天日期:

SELECT DATE_SUB(DATE_ADD(DATE_SUB(DATE_SUB(CURDATE(), INTERVAL DAY(CURDATE())-1 DAY), INTERVAL CASE WHEN MOD(MONTH(CURDATE()), 3) = 1 THEN 0 WHEN MOD(MONTH(CURDATE()), 3) = 2 THEN 1 WHEN MOD(MONTH(CURDATE()), 3) = 0 THEN 2 END MONTH), INTERVAL 3 MONTH), INTERVAL 1 DAY);

 

标签:SUB,INTERVAL,MONTH,实用,CURDATE,sql,mysql,DATE,DAY
From: https://www.cnblogs.com/coding-one/p/17805850.html

相关文章

  • jexcel_将excel数据导入到页面+导入到数据(SQL)
    1. jexcel_数据表_excel导入到页面.aspx<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="jexcel_数据表_excel导入到页面.aspx.cs"Inherits="jexcel_数据表_excel导入到页面"%><!DOCTYPEhtml><htmlxmlns="http://www......
  • [小白入门指南] 如何使用gorm操作MySQL
    1.使用gorm的前置条件1.1MySQL的安装和配置1.2NaviacteForMySQL162.gorm基本操作2.1增2.2查2.3改2.4删2.5gorm迁移1.使用gorm的前置条件1.1MySQL的安装和配置Debian中安装MySQL|MySQL创建用户并授予权限#用rpm查看是否安装了MySQLrpm-qa|gr......
  • Illegal mix of collations (utf8mb4_0900_ai_ci,IMPLICIT) MySql字符集及校对规则不
    查询时报错--用于解决报错>1267-Illegalmixofcollations(utf8mb4_0900_ai_ci,IMPLICIT)and(utf8mb4_general_ci,IMPLICIT)foroperation'='这个错误是由于在进行比较操作时涉及到不同的字符集和校对规则(collations)。涉及到了utf8mb4_0900_ai_ci和utf8mb4_general......
  • java 自定义查询StringBuffer Sql
    一、背景二、实现@AutowiredprivateEntityManagerentityManager;Queryquery=entityManager.createNativeQuery(sql);query.unwrap(SQLQuery.class).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);List<Map<String,Object>>reportWaterTota=qu......
  • 在.net中通过自定义LoggerProvider将日志保存到数据库方法(以mysql为例)
     在.NET中,Microsoft.Extensions.Logging是一个灵活的日志库,它允许你将日志信息记录到各种不同的目标,包括数据库。在这个示例中,我将详细介绍如何使用Microsoft.Extensions.Logging将日志保存到MySQL数据库。我们将使用EntityFrameworkCore来与MySQL数据库进行交互。步骤一:创......
  • 浅析MySQL代价模型:告别盲目使用EXPLAIN,提前预知索引优化策略
    背景在MySQL中,当我们为表创建了一个或多个索引后,通常需要在索引定义完成后,根据具体的数据情况执行EXPLAIN命令,才能观察到数据库实际使用哪个索引、是否使用索引。这使得我们在添加新索引之前,无法提前预知数据库是否能使用期望的索引。更为糟糕的是,有时甚至在添加新的索引后,数......
  • Python 操作 MySQL 数据库
    Python标准数据库接口为PythonDB-API,PythonDB-API为开发人员提供了数据库应用编程接口。Python数据库接口支持非常多的数据库,你可以选择适合你项目的数据库:GadFlymSQLMySQLPostgreSQLMicrosoftSQLServer2000InformixInterbaseOracleSybase你可以访问Python数据库接口及API......
  • 数据库数据恢复—sqlserver数据库和备份被加密,数据库文件名被篡改的数据恢复案例
    SQLServer数据库故障:某公司服务器上的SQLServer数据库被加密,无法使用。被加密的数据库有2个,数据库的MDF、LDF、log文件名字被篡改。数据库被加密截图:数据库备份被加密,文件名字被篡改:SQLServer数据库数据恢复过程:1、将故障数据库内的数据备份至北亚企安数据恢复中心的专用存......
  • MySQL数据库中SQL语句分几类?
    SQL语句主要分为四类,分别是数据查询语言(DQL)、数据操作语言(DML)、数据定义语言(DDL)和数据控制语言(DCL)。1.数据查询语言(DQL):用于从数据库中的一个或多个表中查询数据,主要使用SELECT语句。2.数据操作语言(DML):用于修改数据库中的数据,包括插入(INSERT)、更新(UPDATE)和删除(DELETE)等操作。3.数......
  • 【SQLServer2019管理】备份环境包含数据库
    恢复报错信息:sp_configure值'containeddatabaseauthentication'必须设置为1才能创建包含的数据库。您可能需要使用RECONFIGURE设置value_in_use。(MicrosoftSQLServer,错误:12824)execsp_configure'containeddatabaseauthentication',1GOreconfigure;Go ......