Wednesday, 20 June 2012

sql query Copying table data to another table that should not be repeating terms using Cursor

    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

No comments:

Post a Comment