gpt4 book ai didi

sql - T-SQL中 '\'和 '$'的用法是什么?

转载 作者:行者123 更新时间:2023-12-02 19:05:31 25 4
gpt4 key购买 nike

正如我发现的(在 SQL Server 书籍中):

\ (Backslash) (Transact-SQL)
Breaks a long string constant into two or more lines for readability.

SELECT Clause (Transact-SQL) ... $IDENTITY | $ROWGUID
And
$PARTITION (Transact-SQL)
Returns the partition number into which a set of partitioning column values would be mapped for any specified partition function.

\的使用情况和$在 T-SQL 特别是 SQL Server 中。

现在,我有一个这样的查询:

SELECT \ a, $ b, \11 c, $12 d;

有这样的有效结果:

a    | b    | c     | d 
-----+------+-------+-------
0.00 | 0.00 | 11.00 | 12.00

我认为这个角色有一些我找不到的东西。

编辑:
我发现如果 currency symbols 之后有一个数字,SQL Server 将删除定义的符号并将该值存储为货币数据类型:

我认为,SQL Server 会翻译单个货币符号,该货币符号是部分中的最后一个短语 - 这些部分位于 + 之间。和- - 公式为0.00并且仅在像 -$ 这样的部分的末尾, ($) , (12 + $) , ($) + 12 , $ * (12 - $)等等,而不是 $ + 1 , 2 * $ - 1 。我还发现了$ 2$2 相同.

所有上述行为对于 \ 都是相同的这意味着 SQL Server 认为 \是货币符号!!!

最佳答案

我想检查数据类型和每个,因为您会注意到每个都返回数据类型金钱。

WITH CTE
AS
(
SELECT \ a, $ b, \11 c, $12 d
)

SELECT SQL_VARIANT_PROPERTY(a,'baseType') a,
SQL_VARIANT_PROPERTY(b,'baseType') b,
SQL_VARIANT_PROPERTY(c,'baseType') c,
SQL_VARIANT_PROPERTY(d,'baseType') d
FROM CTE

结果:

a                              b                              c                              d
------------------------------ ------------------------------ ------------------------------ ------------------------------
money money money money

关于sql - T-SQL中 '\'和 '$'的用法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30287368/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com