为什么 QUOTE_IDENT 加倍嵌入引号
Why does QUOTE_IDENT doubles the embedded quotation mark
QUOTE_IDENT
函数的 Redshift
doc 说
The QUOTE_IDENT function returns the specified string as a string in double quotation marks so that it can be used as an identifier in a SQL statement. Appropriately doubles any embedded double quotation marks.
我理解第一部分关于用双引号括起一个字符串。但是什么时候appropriate
双引号呢?为什么这有用?
when is it appropriate to double embedded quotation marks? Why is that useful?
总是合适的。它很有用,因为 QUOTE_IDENT
的输出通常嵌入到更大的字符串中。因此,您在较大的字符串中有一个带引号的字符串,您可以通过查找 单 双引号来检测此类字符串的结尾。 IE。假设我们将 AB"CD
传递给 QUOTE_IDENT
。我们收到回复 "AB""CD"
。然后我们将其嵌入:
SELECT "AB""CD" FROM Foo
稍后解析时,我们在 SELECT
列表中找到 单个 标识符 AB"CD
。
QUOTE_IDENT
函数的 Redshift
doc 说
The QUOTE_IDENT function returns the specified string as a string in double quotation marks so that it can be used as an identifier in a SQL statement. Appropriately doubles any embedded double quotation marks.
我理解第一部分关于用双引号括起一个字符串。但是什么时候appropriate
双引号呢?为什么这有用?
when is it appropriate to double embedded quotation marks? Why is that useful?
总是合适的。它很有用,因为 QUOTE_IDENT
的输出通常嵌入到更大的字符串中。因此,您在较大的字符串中有一个带引号的字符串,您可以通过查找 单 双引号来检测此类字符串的结尾。 IE。假设我们将 AB"CD
传递给 QUOTE_IDENT
。我们收到回复 "AB""CD"
。然后我们将其嵌入:
SELECT "AB""CD" FROM Foo
稍后解析时,我们在 SELECT
列表中找到 单个 标识符 AB"CD
。