even my friend gave me a idea to do like this using a split function or DelimitedSplit8K function also
DECLARE @questionIdandchoiceid varchar(8000)='1-2,2-3,3-5'
DECLARE @question table(
alid uniqueidentifier,
QuestionId int,
crdate datetime,
IsActive bit
)
DECLARE @Choice table(
imid int,
alid uniqueidentifier,
Choiceid int
)
SELECT LEFT(val, CHARINDEX('-', val)-1) AS Ques
, STUFF(val, 1, CHARINDEX('-', val), '') AS Choice
INTO #temp
FROM dbo.split(@questionIdandchoiceid, ',')
INSERT INTO @question(alid, QuestionId)
SELECT NEWID(), Ques FROM #temp
INSERT INTO @Choice
SELECT QuestionId, alid, t.Choice
FROM @question q
inner join #temp t on q.QuestionId = t.Ques
SELECT * FROM @question
SELECT * FROM @Choice
DROP TABLE #temp