sql query Copying table data to another table that should not be repeating terms using Cursor
DECLARE @ACCOUNTID BIGINT
DECLARE @NAME VARCHAR(30)
DECLARE @TEB TABLE(NAME VARCHAR(34),NUM BIGINT)
DECLARE @GETACCOUNTID CURSOR
SET @GETACCOUNTID = CURSOR FOR
SELECT NAME, MBNO
FROM EMP1
OPEN @GETACCOUNTID
FETCH NEXT
FROM @GETACCOUNTID INTO @NAME,@ACCOUNTID
WHILE @@FETCH_STATUS = 0
BEGIN
IF NOT EXISTS(SELECT 1 FROM @TEB WHERE NAME=@NAME AND NUM=@ACCOUNTID)
BEGIN
DECLARE @P AS BIGINT
INSERT INTO @TEB VALUES(@NAME,@ACCOUNTID)
END
FETCH NEXT
FROM @GETACCOUNTID INTO @NAME,@ACCOUNTID
END
CLOSE @GETACCOUNTID
DEALLOCATE @GETACCOUNTID
SELECT* FROM @TEB
Use Of Charindex in sql example
Declare
@value varchar(100)
,@firatName varchar(100)
,@lastName varchar(100)
,@age varchar(100)
set @value = 'mukesh trivedi Age 23'
SELECT @value
Set @firatName = SUBSTRING(@value,0,CHARINDEX(' ',@value,0))
Set @lastName = SUBSTRING(@value,CHARINDEX(' ',@value,0)+1,LEN(@value)- CHARINDEX(' ',@value,0)+ 1 -CHARINDEX(' ',@value, CHARINDEX(' ',@value,0)) )
Set @age = SUBSTRING(@value,CHARINDEX(' ',@value,CHARINDEX(' ',@value,0)+ 1)+ 5,2)
SELECT @firatName ,@lastName,@age v
out put : mukesh trivedi Age 23
mukesh trivedi 23
DECLARE @ACCOUNTID BIGINT
DECLARE @NAME VARCHAR(30)
DECLARE @TEB TABLE(NAME VARCHAR(34),NUM BIGINT)
DECLARE @GETACCOUNTID CURSOR
SET @GETACCOUNTID = CURSOR FOR
SELECT NAME, MBNO
FROM EMP1
OPEN @GETACCOUNTID
FETCH NEXT
FROM @GETACCOUNTID INTO @NAME,@ACCOUNTID
WHILE @@FETCH_STATUS = 0
BEGIN
IF NOT EXISTS(SELECT 1 FROM @TEB WHERE NAME=@NAME AND NUM=@ACCOUNTID)
BEGIN
DECLARE @P AS BIGINT
INSERT INTO @TEB VALUES(@NAME,@ACCOUNTID)
END
FETCH NEXT
FROM @GETACCOUNTID INTO @NAME,@ACCOUNTID
END
CLOSE @GETACCOUNTID
DEALLOCATE @GETACCOUNTID
SELECT* FROM @TEB
Use Of Charindex in sql example
Declare
@value varchar(100)
,@firatName varchar(100)
,@lastName varchar(100)
,@age varchar(100)
set @value = 'mukesh trivedi Age 23'
SELECT @value
Set @firatName = SUBSTRING(@value,0,CHARINDEX(' ',@value,0))
Set @lastName = SUBSTRING(@value,CHARINDEX(' ',@value,0)+1,LEN(@value)- CHARINDEX(' ',@value,0)+ 1 -CHARINDEX(' ',@value, CHARINDEX(' ',@value,0)) )
Set @age = SUBSTRING(@value,CHARINDEX(' ',@value,CHARINDEX(' ',@value,0)+ 1)+ 5,2)
SELECT @firatName ,@lastName,@age v
out put : mukesh trivedi Age 23
mukesh trivedi 23
No comments:
Post a Comment