view sourceprint? 01 --sql server 2005 输出表的函數用法 02 --Geovin Du 塗聚文 03 --締友計算機信息技術有限公司 04 05 create function EmailParse (@email varchar(1000)) 06 returns @t table (UserName varchar(20), Domain varchar(20)) 07 as 08 begin 09 declare @i int 10 11 select @i = charindex('@', @email,1); 12 13 if (@i > 1) 14 insert into @t values (left(@email,@i-1), substring(@email,@i+1,20)) 15 else 16 insert into @t values (null,null) 17 18 return 19 end 20 --測試 21 select username, domain 22 from dbo.EmailParse('geovindu@dupcit.com') 23 --建表測試 24 IF EXISTS (select * from sysobjects where id = object_id(N'[dbo].[emails]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) 25 DROP TABLE [emails] 26 GO 27 create table emails (eID int primary key, EmailAddress varchar(100)) 28 29 insert into emails 30 select 1,'geovindu@geovi.com' union all 31 select 2,'geovindu@dusystem.com' union all 32 select 3,'geovindu@hotmail.com' 33 GO 34 --SQL Server 2005 35 select 36 emails.eID,emails.EmailAddress, s.Username, s.Domain 37 from 38 emails 39 cross apply 40 dbo.EmailParse(emails.EmailAddress) s 41 ---SQL Server 2005 42 select 43 emails.eID, s.Username, s.Domain 44 from 45 emails 46 outer apply 47 dbo.EmailParse(emails.EmailAddress) s
发表评论
-
转:避免全表扫描的sql优化
2015-02-05 16:37 1317http://tech.diannaodian.com/dw/ ... -
给表加上聚集索引和非聚集索引
2014-12-11 17:28 695创建简单非聚集索引 以下示例为 Purchasing.Pro ... -
查看表中索引语句
2014-12-11 10:37 674SELECT object_name(object_id) ... -
SQL2008一行转多行的精典写法
2013-08-28 12:06 412--创建测试表 create table t1( id ... -
在sql server中利用with as实现递归功能
2013-06-25 10:48 530在sqlserver2005之前,要实现递归功能比较麻烦,比如 ... -
SQL 2005 with(nolock)详解
2013-06-17 17:03 577大家在写查询时, ... -
用SQL语句查询每门成绩都大于80的学生姓名
2013-05-29 10:39 1717昨天遇到的一个SQL面试题,感觉很有趣。 表名stu 结构 ... -
SqlServer强制断开数据库已有连接的方法
2013-02-22 11:03 1619在master数据库中执行如下代码 declare @i IN ... -
Sql获取第一天、最后一天
2013-01-03 14:56 9671① 本月第一天(--减去今天再加上1天) SELECT DAT ... -
表函数与游标
2012-12-25 16:07 740--建立数据源 create table tb1(zm ch ... -
SQL杂谈
2012-12-14 17:33 7191、如何用convert什么的把带有时分秒的日期转为时分秒都0 ... -
用FOR XML PATH将查询结果以XML输出
2012-09-20 17:54 1038本文从此而来 http://www.cnblogs.com/d ... -
left join on and
2012-09-20 10:23 879数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临 ... -
筛选索引简单使用
2012-08-17 11:29 1148对于在强制实施数据完整性时的一种常见需求,也可以用筛选索引来解 ... -
排名函数(ROW_NUMBER、RANK、DENSE_RANK)及OVER子句
2012-08-10 10:36 6626--在部门内新水排名(如果有相同名次,用dense_rank) ... -
SQL SERVER 中行列转换 PIVOT UNPIVO
2012-08-18 15:34 2327PIVOT用于将列值旋转为列名、同时执行聚合运算(即行转列), ... -
Apply简单使用举例
2012-08-09 17:20 1024APPLY APPLY运算符把右表表达式应用左输入中 ... -
SQL Server 2008语句大全完整版
2012-08-09 10:39 1388--======================== ... -
Not Exists练习
2012-07-23 14:40 886IF OBJECT_ID(N'a') IS NOT NU ... -
Exists练习查找最小缺失值(Missing Value)
2012-07-17 09:34 991第一种方法 USE tempdb; GO IF OBJE ...
相关推荐
读者将学习到如何编写复杂的SELECT语句,使用JOIN操作连接多表,掌握子查询、聚合函数以及窗口函数的用法,同时还会涉及数据的排序、分组和过滤。此外,书中可能还会讨论到动态SQL和存储过程的编写,以实现更高级的...
在CONCAT函数出现之前,我们通常使用 "+" 运算符来连接字符串,但这种方法存在一个问题,即如果其中任何一个字符串是NULL,整个结果也会变成NULL。而CONCAT函数则会自动忽略NULL值,这大大提高了处理字符串连接时的...
sql server数据库中raiserror函数的用法 server数据库中raiserror的作用就和asp.NET中的throw new Exception一样,用于抛出一个异常或错误。这个错误可以被程序捕捉到。 raiserror的常用格式如下: raiserror(‘错误...
using Microsoft.SqlServer.Server; public class StringConcatenateAgg : SqlUserDefinedAggregate { private string _result = ""; public override void Accumulate(SqlString value) { if (!value.IsNull)...
《SQL Server 2005 技术内幕:T-SQL查询源码》是一本深入探讨SQL Server 2005中T-SQL查询技术的专业书籍。T-SQL(Transact-SQL)是Microsoft SQL Server数据库管理系统中使用的SQL扩展版本,它在标准SQL的基础上增加...
本篇主要关注SQL Server 2008中的三种自定义函数:标量函数、内联表值函数和多语句表值函数。 1. **标量函数**: 标量函数返回单个值,可以是任何SQL Server支持的数据类型。在创建标量函数时,其语法包括`CREATE ...
在SQL Server 2005中,我们可以使用`VARBINARY`和`VARCHAR`数据类型结合内置函数来实现Base64编码与解码: 1. **Base64编码**: ```sql CREATE FUNCTION dbo.Base64Encode(@input VARCHAR(MAX)) RETURNS VARCHAR...
SQL Server 2005对T-SQL进行了扩展,添加了新的语法元素和函数,如窗口函数(OVER子句)、公用表表达式(CTE)、递归查询以及WITH关键字。这些功能使得复杂的数据处理和分析变得更加高效。 2. **存储过程和触发器*...
- **SQLServer**: 使用`ABS`函数来获取一个数值的绝对值。 ```sql SELECT ABS(-1) AS Value; ``` - **Oracle**: 同样使用`ABS`函数。 ```sql SELECT ABS(-1) AS Value FROM DUAL; ``` 2. **向上取整...
在SQL Server 2005中,表值函数被用来实现空间数据库,这是一种高效的方法,尤其对于处理地理和天文数据的复杂查询。表值函数允许开发者创建自定义的函数,这些函数不仅返回单个值,而是能够返回一个表格,就像一个...
通过本书,你将深入了解T-SQL的高级用法,包括触发器、用户自定义函数、异常处理等。该书解释并比较了SQL Server 2000和SQL Server 2005在数据库开发相关问题上的解决方案,深入讨论了SQL Server 2005中新增的T-...
本书首先会介绍T-SQL的基础概念,包括SELECT语句的基本用法,如何从一个或多个表中检索数据,以及如何使用WHERE子句过滤结果。接下来,会深入探讨更高级的查询技巧,如联接(JOIN)操作,用于合并来自不同表的数据;...
│ SQLServer2005安装及使用.txt │ ├─02 常用函数 │ function.sql │ ├─03 建表、建库 │ create.sql │ ├─04 查询语句 │ netnote_sql.sql │ T-SQL(1).sql │ 收藏SQL语句.sql │ 精妙SQL语句收集_sql....
- **多语句表值函数** (Multi-Statement Table-Valued Functions): 使用多条`SELECT`语句或其他T-SQL语句返回结果。 3. **内嵌表值函数** (Inline Table-Valued Functions): 使用一条`SELECT`语句返回结果。这类...
《SQL Server 2005代码大全》是针对SQL Server 2005数据库管理系统的一份详尽参考资料,旨在帮助数据库开发人员...通过学习和实践这些示例,开发者可以深入理解SQL Server 2005的使用方法,提升数据库开发和管理能力。
SQL Server 2005 排名函数比较 SQL Server 2005 中提供了四个排名函数,分别是 row_number、rank、dense_rank 和 ntile。这四个函数的主要功能是为查询结果生成一个序号,用于实现查询指定范围的记录或实现分页功能...
《Microsoft SQL Server 2005技术内幕:T-SQL查询》是一本深入解析SQL Server 2005中T-SQL查询语言的专业书籍。T-SQL(Transact-SQL)是微软对标准SQL的扩展,是SQL Server的核心组件,用于数据库管理、数据查询和...
标题提到的"sql server 2005 完美转sql server 2000,无错正常运行"意味着找到了一种有效的方法解决了这个问题。 描述中提到了“sql2005下生成转2000的脚步时会发生错误”,这通常是因为SQL Server 2005引入了许多...
通过本书,你将深入了解t-sql的高级用法,包括触发器、用户自定义函数、异常处理等。该书解释并比较了sql server 2000和sql server 2005在数据库开发相关问题上的解决方案,深入讨论了sql server 2005中新增的t-...
SQL Server 日期函数详细用法 SQL Server 提供了多种日期函数,用于处理日期和时间数据。下面将详细介绍这些函数的用法。 1. GETDATE() 函数 GETDATE() 函数用于获取当前日期和时间。该函数返回当前服务器的日期...