sql获取昨天的时间,格式要以’2019-01-01 00:00:00’这种格式
时间: 2024-09-13 12:13:04 浏览: 39
在SQL中获取昨天的日期,并将其格式化为'2019-01 00:00:00'这种格式,可以使用数据库提供的日期和时间函数。以下是不同数据库系统中实现这一功能的例子:
对于MySQL:
```sql
SELECT DATE_FORMAT(NOW() - INTERVAL 1 DAY, '%Y-%m-%d 00:00:00');
```
这里`NOW()`函数获取当前的日期和时间,`INTERVAL 1 DAY`表示减去一天,`DATE_FORMAT`函数则用来格式化日期和时间。
对于SQL Server:
```sql
SELECT CONVERT(VARCHAR, DATEADD(day, -1, GETDATE()), 120) + ' 00:00:00';
```
这里`GETDATE()`函数获取当前的日期和时间,`DATEADD`函数用来在当前日期上减去1天,`CONVERT`函数与格式代码120(YYYY-MM-DD格式)一起使用来格式化日期,最后加上' 00:00:00'来设置时间部分。
对于Oracle:
```sql
SELECT TO_CHAR(SYSDATE - 1, 'YYYY-MM-DD') || ' 00:00:00' FROM DUAL;
```
在Oracle中,`SYSDATE`获取当前的日期和时间,减去1代表昨天,`TO_CHAR`函数用于转换日期格式,并且手动拼接上' 00:00:00'来设置时间部分。
对于PostgreSQL:
```sql
SELECT TO_CHAR(NOW() - INTERVAL '1 day', 'YYYY-MM-DD 00:00:00');
```
这里`NOW()`函数获取当前的日期和时间,`INTERVAL '1 day'`表示减去一天,`TO_CHAR`函数则用来格式化日期和时间为指定的格式。
需要注意的是,不同的数据库系统可能有不同的函数和格式化方法,上述例子针对常见的一些数据库。在实际使用时,需要根据所使用的数据库系统选择合适的方法。
阅读全文