Showing posts with label Split. Show all posts
Showing posts with label Split. Show all posts
Monday, September 24, 2012
SQL create split function and how to use function in sql
ALTER FUNCTION [dbo].[Split](@String varchar(8000), @Delimiter char(1))
returns @temptable TABLE (items varchar(8000))
as
begin
declare @idx int
declare @slice varchar(8000)
select @idx = 1
if len(@String)<1 br="br" is="is" nbsp="nbsp" null="null" or="or" return="return" tring="tring">
while @idx!= 0
begin
set @idx = charindex(@Delimiter,@String)
if @idx!=0
set @slice = left(@String,@idx - 1)
else
set @slice = @String
if(len(@slice)>0)
insert into @temptable(Items) values(@slice)
set @String = right(@String,len(@String) - @idx)
if len(@String) = 0 break
end
return
end
GO1>
--- How to call the function
select * from [dbm].[Split] ('L196,L201,L197',',')
Friday, March 12, 2010
separate first & last name using space, SQL, SPLIT
select
SUBSTRING(elg.FirstName, (CHARINDEX(' ', elg.FirstName) + 1),LEN(elg.FirstName)) AS [LastName]
,rtrim(ltrim(SUBSTRING(elg.FirstName, 1,CHARINDEX(' ', elg.FirstName)))) AS [FirstName]
,elg.FirstName
,elg.LastName
from dbm.EgLoads elg
where elg.BatchId='{207c6838-fe87-40d1-9353-0d60055c93f2}'
and LEN(SUBSTRING(elg.FirstName, (CHARINDEX(' ', elg.FirstName) + 1),LEN(elg.FirstName))) < = 2
and len(elg.FirstName) <> 1
SUBSTRING(elg.FirstName, (CHARINDEX(' ', elg.FirstName) + 1),LEN(elg.FirstName)) AS [LastName]
,rtrim(ltrim(SUBSTRING(elg.FirstName, 1,CHARINDEX(' ', elg.FirstName)))) AS [FirstName]
,elg.FirstName
,elg.LastName
from dbm.EgLoads elg
where elg.BatchId='{207c6838-fe87-40d1-9353-0d60055c93f2}'
and LEN(SUBSTRING(elg.FirstName, (CHARINDEX(' ', elg.FirstName) + 1),LEN(elg.FirstName))) < = 2
and len(elg.FirstName) <> 1
Subscribe to:
Posts (Atom)