इसे आजमाएं
DECLARE @temp TABLE(col1 varchar(20),col2 int, col3 varchar(20))
insert into @temp values ('data1', 123 , '12/03/2009'),('data1', 124 , '15/09/2009'),
('data2 ',333 ,'02/09/2010'),('data2 ',323 , '02/11/2010'),
('data2 ',673 , '02/09/2014'),('data2',444 , '05/01/2010')
SELECT
(CASE rno WHEN 1 THEN col1 ELSE '' END )AS col1,
col2,
col3
FROM
(
SELECT
ROW_NUMBER() OVER(PARTITION BY Col1 ORDER BY col2) AS rno,
col1,col2,col3
FROM @temp
) As temp
यह निम्न आउटपुट देता है
col1 col2 col3
---------------------------------
data1 123 12/03/2009
124 15/09/2009
data2 323 02/11/2010
333 02/09/2010
444 05/01/2010
673 02/09/2014
PARTITION BY
दिए गए कॉलम नाम के साथ डेटा को समूहीकृत कर रहा है, और उस समूह में order by
के आधार पर एक पंक्ति संख्या उत्पन्न होती है .
यह रहा SQL Fiddle
मैंने प्रदान की गई स्कीमा के आधार पर एक और पहेली बनाई है।fiddle2