idx | ndatetime | mch_no | log1 | log2 | log3 | log4 | tmp1 | tmmp2 | adate |
1 | 1395701893 | 32166 | 55 | 183 | 1 | 1 | 0 | 0 | 2014-03-24 |
2 | 1395649161 | 32166 | 55 | 183 | 1 | 0 | 0 | 0 | 2014-03-24 |
3 | 1395649152 | 32166 | 55 | 183 | 1 | 1 | 0 | 0 | 2014-03-24 |
위와같이 있을 경우 adate로 그룹하여 ndatetime 최대값과 최소값일 경우 log4를 참조 하고 싶습니다.
아래처럼 select 하고 싶습니다.
조언 부탁드립니다.
ndatetime | log4 | adate |
1395701893 | 1 | 2014-03-24 |
1395649152 | 1 | 2014-03-24 |
Comment 1
-
DECLARE @DATA TABLE (idx INT, ndatetime CHAR(10), mch_no INT, log1 INT, log2 INT, log3 INT, log4 INT, tmp1 INT, tmmp2 INT, adate DATETIME)INSERT @DATA SELECT 1, '1395701893', 32166, 55, 183, 1, 1, 0, 0, '2014-03-24'INSERT @DATA SELECT 2, '1395649161', 32166, 55, 183, 1, 0, 0, 0, '2014-03-24'INSERT @DATA SELECT 3, '1395649152', 32166, 55, 183, 1, 1, 0, 0, '2014-03-24'SELECT A.ndatetime, A.log4, A.adateFROM @DATA A INNER JOIN(SELECT ndatetime = MIN(ndatetime) FROM @DATA GROUP BY adateUNION ALLSELECT ndatetime = MAX(ndatetime) FROM @DATA GROUP BY adate) B ON A.ndatetime = B.ndatetime