📜  比较两个日期的 SQL 查询

📅  最后修改于: 2022-05-13 01:54:58.454000             🧑  作者: Mango

比较两个日期的 SQL 查询

在 SQL 中,日期对于新手来说很复杂,因为在使用数据库时,表中日期的格式必须与输入日期匹配才能插入。在各种场景中,不使用日期,而是使用日期时间(时间也与日期有关)。在这里我们将看到,SQL Query 来比较两个日期。这可以使用等于(=)、小于(<) 和大于(>)运算符轻松完成。在 SQL 中,日期值具有 DATE 数据类型,它接受“yyyy-mm-dd”格式的日期。要比较两个日期,我们将声明两个日期并使用IF-ELSE语句比较它们。

句法:

我们可以通过在变量名前使用关键字DECLARE来轻松声明变量。默认情况下,局部变量以@ 开头。

句法:

DECLARE @variable_name datatype;

为变量设置值:我们可以使用 SET 关键字为变量赋值。

句法:

SET @variable_name;

现在我们以不同的案例来演示日期之间的比较。

查询 1:

DECLARE @date1 DATE, @date2 DATE;                               
SET @date1='2021-01-01';
SET @date2='2021-02-02';                                       
IF @date1=@date2                                                
SELECT 'equal date'
ELSE
IF @date1<@date2 SELECT 'date2 is greater'              
ELSE SELECT 'date1 is greater';                         



输出:

查询 2:

DECLARE @date1 DATE, @date2 VARCHAR(20);
SET @date1='2021-01-01';
SET @date2='2021-01-01';
IF @date1=@date2
SELECT 'equal date'
ELSE
IF @date1<@date2 SELECT 'date2 is greater'
ELSE SELECT 'date1 is greater';

输出:

查询 3:

DECLARE @date1 DATE, @date2 VARCHAR(20);
SET @date1='2022-01-01';
SET @date2='2021-01-01';
IF @date1=@date2
SELECT 'equal date'
ELSE
IF @date1<@date2 SELECT 'date2 is greater'
ELSE SELECT 'date1 is greater';

输出: