当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


SQL NUMERIC转NVARCHAR用法及代码示例


在这里,我们将看到如何使用 CAST()、CONVERT() 和 FORMAT() 函数将 MS SQL Server 数据库表中的 NUMERIC 数据转换为 NVARCHAR 数据。

我们将创建一个名为“geeks” 的数据库中的表。

创建数据库:

CREATE DATABASE geeks;

使用数据库:

USE geeks;

表定义:

我们的极客数据库中有以下 Employee 表:

CREATE TABLE person(
id INT IDENTITY(1,1) PRIMARY KEY,
name VARCHAR(30) NOT NULL,
weight NUMERIC(10,5) NOT NULL);
--Here NUMERIC(10,5) says there should be total 10 digits given that 5 digits would be 
--to the right of the decimal point.

可以使用下面的语句来查询创建的表的说明:

EXEC SP_COLUMNS person;

将数据添加到表中:

使用以下语句向 person 表添加数据:

INSERT INTO person
VALUES
('Yogesh Vaishnav', 62.5),
('Vishal Vishwakarma', 70),
('Ashish Yadav', 69),
('Ajit Yadav', 71.9);

要验证表的内容,请使用以下语句:

SELECT * FROM person;

现在,我们使用三种不同的方法将 NUMBERIC 值转换为 NVARCHAR。

  • 使用CONVERT()函数:
Syntax: SELECT CONVERT(<DATA_TYPE>, <VALUE>);
--DATA_TYPE is the type we want to convert to.
--VALUE is the value we want to convert into DATA_TYPE.

例子:

SELECT 'Weight of Yogesh Vaishnav is ' + CONVERT(NVARCHAR(20), weight)
AS person_weight
FROM person
WHERE name = 'Yogesh Vaishnav';

正如您所看到的,如上所述,小数点右侧总共有 5 位数字。

  • 使用CAST()函数:
Syntax: SELECT CAST(<VALUE> AS <DATA_TYPE>);
--DATA_TYPE is the type we want to convert to.
--VALUE is the value we want to convert into DATA_TYPE

例子:

SELECT 'Weight of Ajit Yadav is ' + CAST(weight as NVARCHAR(20))
AS person_weight
FROM person
WHERE name = 'Ajit Yadav';

  • 使用FORMAT()函数:

虽然 FORMAT() 函数对于格式化日期时间和不将一种类型转换为另一种类型很有用,但仍然可用于将浮点值转换(或此处格式)为 STR 值。

Syntax: SELECT FORMAT(<VALUE> , 'actual_format';
--actual_format is the format we want to achieve in a string form.
--VALUE is the value we want to format according to the actual_format.

例子:

SELECT 'Weight of Ashish Yadav is ' + FORMAT(weight, '') --'' denotes no formatting
--i.e simply convert it to a string of characters.
AS person_weight
FROM person
WHERE name = 'Ashish Yadav';


相关用法


注:本文由纯净天空筛选整理自yoji大神的英文原创作品 SQL Query to convert NUMERIC to NVARCHAR。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。