在SQL语句中截取字符串函数的应用
问题一
有这样的一个问题,数据库中有两个表,分别是Guest,Hotel,即旅客信息表和旅馆信息表,Guest表中有一个旅客编码的字段,这个字段的有20位,它的前10位代表这个旅客所住的旅馆,现在的问题是要根据Guest表中的旅客编码字段信息查到他所住的旅馆的名称和旅馆地址!
问题解决:
SQL SERVER的SQL语句:select Guest.旅客编码,Guest.旅客姓名,Hotel.旅馆名称,Hotel.旅馆地址 from Guest,Hotel where Hotel.旅馆编码=SubString(Guest.旅客编码,1,10)
Oracle的SQL语句:select Guest.旅客编码,Guest.旅客姓名,Hotel.旅馆名称,Hotel.旅馆地址 from Guest,Hotel where Hotel.旅馆编码=SubStr(Guest.旅客编码,1,10)
问题二
A.截取从字符串左边开始N个字符
Declare @S1 varchar(100)
Select @S1='http://www.xrss.cn'
Select Left(@S1,4)
------------------------------------
显示结果: http
B.截取从字符串右边开始N个字符(例如取字符www.163.com)
Declare @S1 varchar(100)
Select @S1='http://www.xrss.cn'
Select right(@S1,11)
------------------------------------
显示结果: www.163.com ????
C.截取字符串中任意位置及长度(例如取字符www)
Declare @S1 varchar(100)
Select @S1='http://www.xrss.cn'
Select SUBSTRING(@S1,8,3)
------------------------------------
显示结果: www.163.com
以上例子皆是已知截取位置及长度,下面介绍未知位置的例子
2.截取未知位置的函数
&n
相关文档:
【1】
create procedure proc_pager1
( @pageIndex int, -- 要选择第X页的数据
@pageSize int -- 每页显示记录数
)
AS
BEGIN
declare @sqlStr varchar(500)
set @sqlStr='select top '+con ......
/***************************************************
作者:herowang(让你望见影子的墙)
日期:2010.1.5
注: 转载请保留此信息
......
在sql查询分析器里面是不能直接运行cmd命令的
但是SQL给出了一个接口
--打开高级设置
EXEC sp_configure 'show advanced options', 1
RECONFIGURE
--打开xp_cmdshell扩展存储过程
EXEC sp_configure 'xp_cmdshell', 1
RECONFIGURE
首先 打开一些配置
然后执行你要运行cmd命令
exec master..xp_cmdshell 'net star ......
说到软解析(soft prase
)和硬解析(
hard prase
),就不能不说一下
Oracle
对
sql
的处理过程。当你发出一条
sql
语句交付
Oracle
,在执行和获取结果前,
Oracle
对此
sql
将进行几个步骤的处理过程:
1、语法检查(
syntax check
)
&nb ......
在我们日常使用SQL Server数据库时,经常遇到需要在实例Instance01中跨实例访问Instance02中的数据。例如在做数据迁移时,如下语句:
insert into Instance01.DB01.dbo.Table01
select * from Instance02.DB01.dbo.Table01
普通情况下,这样做是不允许的,因为SQ ......