sql 中 如何截取一个字段的某部分并同时与某一数值比较大小?
1个回答
展开全部
你说的函数是oracle中的substr,sqlserver中的substring
下面是贴来的,就是手册翻译而来的,你随便看看吧
语法
SUBSTRING
(
expression
,
start
,
length
)
参数
expression
是字符串、二进制字符串、text、image、列或包含列的表达式。不要使用包含聚合函数的表达式。
start
是一个整数,指定子串的开始位置。
length
是一个整数,指定子串的长度(要返回的字符数或字节数)。
说明
由于在
text
数据上使用
SUBSTRING
时
start
和
length
指定字节数,因此
DBCS
数据(如日本汉字)可能导致在结果的开始或结束位置拆分字符。此行为与
READTEXT
处理
DBCS
的方式一致。然而,由于偶而会出现奇怪的结果,建议对
DBCS
字符使用
ntext
而非
text。
返回类型
如果
expression
是支持的字符数据类型,则返回字符数据。如果
expression
是支持的
binary
数据类型,则返回二进制数据。
返回字符串的类型与给定表达式的类型相同(表中显示的除外)。
给定的表达式
返回类型
text
varchar
image
varbinary
ntext
nvarchar
注释
在字符数中必须指定使用
ntext、char
或
varchar
数据类型的偏移量(start
和
length)。在字节数中必须指定使用
text、image、binary
或
varbinary
数据类型的偏移量。
说明
兼容级别可能影响返回值。有关兼容级别的更多信息,请参见
sp_dbcmptlevel。
示例
A.
在字符串上使用
SUBSTRING
下例显示如何只返回字符串的一部分。该查询在一列中返回
authors
表中的姓氏,在另一列中返回
authors
表中的名字首字母。
USE
pubs
SELECT
au_lname,
SUBSTRING(au_fname,
1,
1)
FROM
authors
ORDER
BY
au_lname
下面是结果集:
au_lname
----------------------------------------
-
Bennet
A
Blotchet-Halls
R
Carson
C
DeFrance
M
del
Castillo
I
...
Yokomoto
A
(23
row(s)
affected)
下例显示如何显示字符串常量
abcdef
中的第二个、第三个和第四个字符。
SELECT
x
=
SUBSTRING('abcdef',
2,
3)
下面是结果集:
x
----------
bcd
(1
row(s)
affected)
下面是贴来的,就是手册翻译而来的,你随便看看吧
语法
SUBSTRING
(
expression
,
start
,
length
)
参数
expression
是字符串、二进制字符串、text、image、列或包含列的表达式。不要使用包含聚合函数的表达式。
start
是一个整数,指定子串的开始位置。
length
是一个整数,指定子串的长度(要返回的字符数或字节数)。
说明
由于在
text
数据上使用
SUBSTRING
时
start
和
length
指定字节数,因此
DBCS
数据(如日本汉字)可能导致在结果的开始或结束位置拆分字符。此行为与
READTEXT
处理
DBCS
的方式一致。然而,由于偶而会出现奇怪的结果,建议对
DBCS
字符使用
ntext
而非
text。
返回类型
如果
expression
是支持的字符数据类型,则返回字符数据。如果
expression
是支持的
binary
数据类型,则返回二进制数据。
返回字符串的类型与给定表达式的类型相同(表中显示的除外)。
给定的表达式
返回类型
text
varchar
image
varbinary
ntext
nvarchar
注释
在字符数中必须指定使用
ntext、char
或
varchar
数据类型的偏移量(start
和
length)。在字节数中必须指定使用
text、image、binary
或
varbinary
数据类型的偏移量。
说明
兼容级别可能影响返回值。有关兼容级别的更多信息,请参见
sp_dbcmptlevel。
示例
A.
在字符串上使用
SUBSTRING
下例显示如何只返回字符串的一部分。该查询在一列中返回
authors
表中的姓氏,在另一列中返回
authors
表中的名字首字母。
USE
pubs
SELECT
au_lname,
SUBSTRING(au_fname,
1,
1)
FROM
authors
ORDER
BY
au_lname
下面是结果集:
au_lname
----------------------------------------
-
Bennet
A
Blotchet-Halls
R
Carson
C
DeFrance
M
del
Castillo
I
...
Yokomoto
A
(23
row(s)
affected)
下例显示如何显示字符串常量
abcdef
中的第二个、第三个和第四个字符。
SELECT
x
=
SUBSTRING('abcdef',
2,
3)
下面是结果集:
x
----------
bcd
(1
row(s)
affected)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询