Postgres SQL 单引号转义
Postgres SQL Single quote Escape
我需要帮助来转义 postgresql 插入中的单引号。我正在使用 ETL 工具从源中提取数据并加载到 postgresql database.The Select 语句中包含一些变量。
例如我的select查询是
SELECT ${UNIVERSITY},date from education.
变量 ${UNIVERSITY}
的值为 Duke's university
。这个语句给我一个错误
ERROR: syntax error at or near "s"
并且没有加载到 postgres table。谁能帮我转义单引号,我应该如何在变量中使用?
你可以SELECT REPLACE(${UNIVERSITY},'''', ''''''),date from education.
但可能你只需要做 SELECT '${UNIVERSITY}',date from education
因为你的查询看起来像:
SELECT Duke's university,date from education
SQL 语法肯定是错误的。
既然你已经提到了它,它并不引用table教育中的一个专栏。您可以通过此转换获得相同的预期输出。
在
- Table input
步骤中,您可以编写查询 SELECT date from education
- 在 split fields
步骤中,您可以将新列添加到您的结果为 University
- 从 Get Variables
步骤开始,您可以将参数值分配给新列大学
- 在 Select Values
步骤
中获取结果
@Marlon Abeykoon 的回答很好。你也可以这样做。
将其放入作业中并在其中设置一个名为 UNIVERSITY
的参数或变量,并为其赋予 "Duke's University" 值。从那里启动上述转换。选择一个始终为 true 的连接条件。我用了'yr_key IS NOT NULL'。以下是结果:
然后您可以 运行 将结果放入 Table Output
步骤以加载到 PostgreSQL。
我需要帮助来转义 postgresql 插入中的单引号。我正在使用 ETL 工具从源中提取数据并加载到 postgresql database.The Select 语句中包含一些变量。
例如我的select查询是
SELECT ${UNIVERSITY},date from education.
变量 ${UNIVERSITY}
的值为 Duke's university
。这个语句给我一个错误
ERROR: syntax error at or near "s"
并且没有加载到 postgres table。谁能帮我转义单引号,我应该如何在变量中使用?
你可以SELECT REPLACE(${UNIVERSITY},'''', ''''''),date from education.
但可能你只需要做 SELECT '${UNIVERSITY}',date from education
因为你的查询看起来像:
SELECT Duke's university,date from education
SQL 语法肯定是错误的。
既然你已经提到了它,它并不引用table教育中的一个专栏。您可以通过此转换获得相同的预期输出。
在
- Table input
步骤中,您可以编写查询 SELECT date from education
- 在 split fields
步骤中,您可以将新列添加到您的结果为 University
- 从 Get Variables
步骤开始,您可以将参数值分配给新列大学
- 在 Select Values
步骤
@Marlon Abeykoon 的回答很好。你也可以这样做。
将其放入作业中并在其中设置一个名为 UNIVERSITY
的参数或变量,并为其赋予 "Duke's University" 值。从那里启动上述转换。选择一个始终为 true 的连接条件。我用了'yr_key IS NOT NULL'。以下是结果:
然后您可以 运行 将结果放入 Table Output
步骤以加载到 PostgreSQL。