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

What is the usage of #39;\#39; and #39;$#39; in T-SQL?(\ 和 $ 在 T-SQL 中的用法是什么?)
本文介绍了'\' 和 '$' 在 T-SQL 中的用法是什么?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

As I found (in SQL Server books):

\(反斜杠)(Transact-SQL)
将一个长字符串常量分成两行或更多行以提高可读性.

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

SELECT 子句 (Transact-SQL) ... $IDENTITY |$ROWGUID

$PARTITION (Transact-SQL)
返回分区号,对于任何指定的分区函数,一组分区列值将映射到该分区号.

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 中的使用.

of usage of \ and $ in T-SQL specially SQL Server.

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

Now, I have a query like this:

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

具有如下有效结果:

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

我觉得这个角色有些地方我找不到.

I think there is something that I can't find it about this characters.


我发现如果 货币符号,SQL Server 将删除定义的符号并将值存储为货币数据类型:

Edit :
I found that if a number comes after currency symbols, SQL Server will remove the defined symbol and store the value as a money data type:

而且我认为,SQL Server 将作为部分中最后一个短语的单个货币符号 - 这些部分在公式的 +-- 之间转换为 0.00 并且仅在 -$($)(12 + $)($) + 12, $ * (12 - $) 等等,而不是 $ + 1, 2 * $ -1.我还发现 $2$2 相同.

And I think, SQL Server translate a single currency symbol that is the last phrase in a part -these parts are between + and -- of formula to 0.00 and only at the end of the part like -$, ($), (12 + $), ($) + 12, $ * (12 - $) or so on, and not $ + 1, 2 * $ - 1. Also I found $ 2 is same as $2.

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

All above behavior is same for \ that means SQL Server thinks \ is a currency symbol!!!

推荐答案

我想检查数据类型,你会发现每个都返回数据类型 money.

I thought to check the datatype and each as you'll notice each returns the datatype money.

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

这篇关于'\' 和 '$' 在 T-SQL 中的用法是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Execute complex raw SQL query in EF6(在EF6中执行复杂的原始SQL查询)
Hibernate reactive No Vert.x context active in aws rds(AWS RDS中的休眠反应性非Vert.x上下文处于活动状态)
Bulk insert with mysql2 and NodeJs throws 500(使用mysql2和NodeJS的大容量插入抛出500)
Flask + PyMySQL giving error no attribute #39;settimeout#39;(FlASK+PyMySQL给出错误,没有属性#39;setTimeout#39;)
auto_increment column for a group of rows?(一组行的AUTO_INCREMENT列?)
Sort by ID DESC(按ID代码排序)