【20230330每日面经】SQL查询语句

每日面经

  • 考察点:SQL查询

  • 难度:简单

  • 题目: 有一个名为 “sales” 的表,其中包含以下字段:order_id, customer_id, order_date, product_id, quantity, price。查询2022年销售订单的数据

ps:每周一公布上周所有题目答案

select * from sales where date_format(order_date, ‘%Y’) = 2022

1 个赞

sql1

SELECT *
FROM sales
WHERE order_date BETWEEN '2022-01-01' AND '2022-12-31';

注意,这个查询假设 order_date 列包含日期时间戳,而不是仅包含日期。如果 order_date 列仅包含日期,则可以将日期字符串中的时间部分设置为 00:00:00 或使用 DATE(order_date) 函数来提取日期部分。

sql2

SELECT * 
FROM sales
WHERE order_date >= '2022-01-01' AND order_date < '2023-01-01';

从表 “sales” 中选择所有字段,并筛选出 “order_date” 在2022年的订单数据。

注意,查询条件使用了大于等于2022年1月1日并且小于2023年1月1日的日期范围,这样可以确保仅返回2022年的数据。

sql3

SELECT *
FROM sales
WHERE YEAR(order_date) = 2022;

这个查询语句将从 “sales” 表中选择所有 “order_date” 字段年份为 2022 的数据,即查询2022年的销售订单数据。

如果只想选择特定字段,可以将 “*” 替换为您需要选择的字段名称。

sql4

SELECT *
FROM sales
WHERE date_format(order_date, '%Y') = '2022';

使用 date_format 函数来提取日期中的年份,然后将其与 2022 进行比较。

date_format 函数返回的是字符串类型的年份值,将其与字符串 “2022” 进行比较。

select * from sales where order_date >=‘2022-01-01’ and oeder_date < ‘2023-01-01’;
select * from sales where YEAR(order_date) = 2022;
select * from sales where date_format(order_date, ‘%Y’) = ‘2022’;