数据库2025年07月21日
今天 select * from 表名 where to_days(时间字段名) = to_days(now()); 昨天 SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 1 近7天 SELECT * FROM 表名 where DATE_SUB(CURDATE(),...
数据库2025年07月19日
业务需求说明:由于之前公司后台APP端有一个document表,该表中包含了所有的信息,新的需求就是通过该表创建出一个新的用户表(usertable)和一个档案表(document,该表只保留原document的部分字段)。 ps:原document表的数据有25万条的数据,因此在处理的时候,需要考虑到性能的问题。 首先当然是对两个表进行字段的设计,然后是...
数据库2025年07月19日
SQL 语句规约 强制部分 【强制】 不要使用 count(列名) 或 count(常量) 来替代 count(*),count(*) 是 SQL92 定义的标准统计行数的语法,跟数据库无关,跟 NULL 和 非 NULL 无关。说明:count(*) 会统计值为 NULL 的行,而 count(列名) 不会统计此列为 NULL 值的行。 【强制】 cou...
数据库2025年07月16日
...
数据库2025年07月16日
mysql delete not in 想要执行: DELETE FROM tb_tableA WHERE id IN ( SELECT a.id FROM tb_tableA a WHERE a.id NOT IN ( SELECT a_id FROM tb_tableB ) ); 是无法正确执行的。 解决方案:创建临时表,作为中间表;用完再删去。 CR...
数据库2025年07月15日
一NVL函数是一个空值转换函数NVL(表达式1,表达式2)如果表达式1为空值,NVL返回值为表达式2的值,否则返回表达式1的值。 该函数的目的是把一个空值(null)转换成一个实际的值。其表达式的值可以是数字型、字符型和日期型。但是表达式1和表达式2的数据类型必须为同一个类型。对数字型: NVL( comm,0);对字符型 NVL( TO_CHAR(com...
数据库2025年07月13日
字段类型是: `enterpriseId` int(10) unsigned DEFAULT NULL, `email` char(255) NOT NULL DEFAULT '',表的索引是: UNIQUE KEY `emailent` (`email`,`enterpriseId`), KEY `edf` (`enterpriseId`,`depart...
数据库2025年07月13日
--问题:同一个SQL语句如何实现在ORACLE和SQLserver中查询某一天的数据 --背景:项目需要共用SQL语句,通过配置文件中的数据库连接串和数据库类别,创建不同的数据库访问对象, -- 调用时的SQL入参字符串是共用的,因为SQLserver和ORECLE处理时间字段稍微有差异,导致sql带时间过滤时无法同时兼容两种数据库。 --例如: --S...
数据库2025年07月12日
用Mysql存储过程来完成动态SQL语句,使用存储过程有很好的执行效率: 现在有要求如下:根据输入的年份、国家、节假日类型查询一个节假日,我们可以使用一般的SQL语句嵌入到Java代码中,但是执行效率方面,表现方面并不是很理想,因此我选择使用拼接SQL语句来完成这个查询(因为有可能数据为空,所以一开始我选择使用的方式拼接字符串) SQL语句如下: (这是在...
数据库2025年07月09日
书写顺序: select -> from -> where -> group by -> having -> order by 执行顺序: from -> where -> group by -> having -> select ...