게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
[C#]group이 되질 않는건지 소스를 잘못 사용한건지.. 조언부탁드려
게시물ID : programmer_15123짧은주소 복사하기
작성자 : 하린
추천 : 0
조회수 : 372회
댓글수 : 3개
등록시간 : 2015/12/22 13:27:28
var query = from dr in objTotalLowDataTable2.AsEnumerable().Distinct()
                            group dr by dr[Select_oper] into gg
                            select new
                            {
                                Site = gg.Key,
                                sum = gg.Sum(r => r.Field<double>("Oper_Time")),  
                                count = gg.Count()
                            };
 
 
Oper_Time은 현재 데이터 테이블에 00:00:00의 문자열로 이루어져 있습니다.
본래는 double형식으로 초 단위로 표시되었습니다만 ...
보기 편하게 시,분,초로 문자열로 바꿨습니다.
해당 시간에 대해 총 합을 구하기 위해 위의 소스를 아래와 같이 바꿧습니다.
 
                var query = from dr in objTotalLowDataTable2.AsEnumerable().Distinct()
                            group dr by dr[Select_oper] new {Site = dr.Field<string>("Site") , Oper_time = dr.Field<string>("Oper_Time") } into gg
                            select new
                            {
                                Site = gg.Key.Site,
                                strSum = gg.Key.Oper_time,
                                count = gg.Count()
                            };
                foreach (var x in query)
                {
                    site_name.Add(x.Site.ToString());
                    site_oper.Add((double.Parse((x.strSum).Substring(0, 2)) * 3600) + (double.Parse((x.strSum).Substring(3, 2)) * 60) + (double.Parse((x.strSum).Substring(6, 2))));                    
                    site_count.Add(x.count);
                }
 
합계는 잘 나오나 .. Group시 사이트의 개수가 2개가 나와야 하는데 Group이 안되고 4개로 되더라구요...
맨 처음 소스처럼 Sum이 함수를 사용하지 않아서 그런건가요 ??
조언 부탁 드립니다 ㅠ
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호