> For the complete documentation index, see [llms.txt](https://doc.duaer.com/zh/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.duaer.com/zh/integrations/builtin/app-nodes/duaer-nodes-base.postgres/common-issues.md).

# Duaer 里 Postgres 的常见问题

Duaer 里 Postgres 节点的常见问题：参数化 IN 查询、时间戳和时区、DATE 列的格式。
## 用查询参数填 IN 列表 <a href="#dynamically-populate-sql-in-groups-with-parameters" id="dynamically-populate-sql-in-groups-with-parameters"></a>

Execute Query 里，在 Options → Query Parameters 填一个返回数组的表达式，例如 {{ $json.sizes }}，Duaer 会把数组展开成 $1、$2……（节点 2.5 起）。IN 里的占位符按数组长度生成：

```
SELECT color, size FROM shirts
WHERE size IN ({{ $json.sizes.map((_, i) => '$' + (i + 1)).join(', ') }});
```

## 时间戳和时区 <a href="#working-with-timestamps-and-time-zones" id="working-with-timestamps-and-time-zones"></a>

- 存储和传递时间都用 UTC。
- 在数字组织设置里设「时区」；自托管实例用 GENERIC_TIMEZONE 设默认时区。
- 节点之间用 ISO 8601 字符串传日期，需要时用 [Date & Time](/zh/integrations/builtin/core-nodes/duaer-nodes-base.datetime.md) 转换。

## DATE 列变成了带时间的 ISO 字符串 <a href="#outputting-date-columns-as-date-strings-instead-of-iso-datetime-strings" id="outputting-date-columns-as-date-strings-instead-of-iso-datetime-strings"></a>

Postgres 节点 2.7 起，DATE 列按原样返回，例如 2025-12-25。旧版本会转成 ISO 日期时间，可能因时区变成前一天。重新添加节点以用上新版本，或在查询里格式化：

```
SELECT TO_CHAR(date_col, 'YYYY-MM-DD') AS date_col FROM my_table;
```
## Questions

### Duaer 的 Postgres 节点怎么安全地拼 IN 列表？

在 Duaer Postgres 节点的 Query Parameters 里传数组，IN 里按数组长度生成 $1、$2 占位符。

