pgsql提取列202301261320852最后两位数,并用0补齐
时间: 2024-01-09 21:23:42 浏览: 34
您好!您可以使用以下 SQL 语句来提取列 "202301261320852" 的最后两位数,并用 0 补齐:
```
SELECT LPAD(SUBSTRING('202301261320852' FROM -2), 2, '0');
```
执行以上语句后,将会返回结果 "52",其中使用 LPAD() 函数来在左侧补齐 0,使得结果长度为 2。
相关问题
pgsql提取列202301261320852的最后两位替换为0
您可以使用 PostgreSQL 中的 `date_trunc`、`extract` 和 `to_timestamp` 函数来将日期时间列中的最后两位替换为0。例如,如果您有一个名为 `my_table` 的表,其中包含一个名为 `my_column` 的日期时间列,并且您想要将该列中的最后两位替换为0,则可以使用以下查询:
```sql
UPDATE my_table SET my_column = to_timestamp(extract(epoch FROM date_trunc('minute', my_column))::int);
```
这将 `my_column` 中的值“2023-01-26 13:20:85”替换为“2023-01-26 13:20:00”。该查询将使用 `date_trunc` 函数将日期时间列的秒数截断为0,并使用 `extract` 函数获取该值的 Unix 时间戳(自 1970 年 1 月 1 日以来的秒数)。然后,将此时间戳转换为新的日期时间值,其中最后两位设置为0。
请注意,如果您的日期时间列包含毫秒(例如“2023-01-26 13:20:85.123”),则上述查询将截断毫秒,并将其替换为0。如果您想要保留毫秒值,则需要相应地调整查询。
pgsql提取列202301261320852第十四十五位数,用0补齐
您好!您可以使用以下 SQL 语句来提取列 "202301261320852" 的第 14 和第 15 位数,并用 0 补齐:
```
SELECT LPAD(SUBSTRING('202301261320852' FROM 14 FOR 2), 2, '0');
```
执行以上语句后,将会返回结果 "32",其中使用 LPAD() 函数来在左侧补齐 0,使得结果长度为 2。