Background Image

FORUM

조회 수 13831 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
select substring(vi_time from 1 for 2) as hour_as, count(vi_id) as cnt from visit_table group by substring(vi_time from 1 for 2) order by vi_time asc

위와 같은 쿼리입니다. 목적은 타임 값이 들어있는 필드 vi_time 에 대해 시간과 번호개수를 시간으로 그룹바이 하여 구하려고 합니다

다음과 같은 오류가 납니다.

 visit_table.vi_time is not single valued. Attributes exposed in aggregate queries must also appear in the group by clause. 

 참고로 위쿼리는 마이에스큐엘에서 마이에스큐엘형으로 실행시 오류가 없었습니다.

 어떻게 하죠?
  • ?
    남재우 2010.03.25 02:24
    해당 질의 역시 group by 절에 select 절에 있는 단일 필드들을 추가해주어야 합니다.
    order by 에 사용한 vi_time 은 substring() 과는 별개의 필드로 취급되므로 group by 절에 명시하시거나 해야 합니다. select 절에는 없지만 order by 절에 있음으로 인하여 select 절에 있는 것과 동일하게 취급되기 때문입니다.
    그런데, substring(vi_time ..) 의 결과만 필요하고 정렬 역시 substring(vi_time ...) 순으로만 되면 된다면 정렬을 substring(vi_time ...)에 대하여 할 필요가 없습니다. group by 를 하게 되면 그 결과는 group by 대상에 대하여 자동으로 정렬이 되기 때문입니다.
    만약 substring(vi_time ...) 과 별개로 vi_time 에 대하여 정렬을 해야 한다면 결국 select 절에 substring(vi_time ...)와 vi_time 이 모두 있는 것과 마찬가지 이므로 group by 절에 vi_time 을 명시해야 합니다.
    substring(vi_time ...) 만으로 정렬을 해도 상관이 없다면 order by 는 제거하여도 됩니다.

  1. No Image notice by admin 2024/04/23 by admin
    Views 118 

    CUBRID 사용자를 위한 DBeaver 도구 출시 안내

  2. SQLGate for CUBRID 영구 무료 라이선스 제공

  3. Collection에 관해 질문 드립니다.

  4. 큐브리드 실행

  5. is null 조건 쿼리가 더 오래 걸리는 이유가 무엇인가요?

  6. 무슨 오류인가요?

  7. 연동하는법좀

  8. 다름이아니라 PHP 모듈관련

  9. java vm is not running

  10. 매니저에서 테이블 여러개를 한꺼번에 삭제 하려면?

  11. group by 오류

  12. mysql 데이트 컬럼 자르기 문의

  13. 데이트타입 컬럼의 주를 구하는 함수는?

  14. 데이터베이스 백업 문의

  15. 저장프로시저(function) 오류 문제입니다.

  16. jdbc 관련 질문입니다. 톰켓 종료시 문제입니다.

  17. 쿼리 오류 질문 입니다.

  18. 디비 사용자 추가시 오류 문의드립니다.

  19. DB 생성 오류 질문입니다.

  20. 날짜함수 문의

  21. 엔터 개행문자 역슬래쉬 문제

  22. grails에서 사용이 가능한 방법이 있나요?

Board Pagination Prev 1 ... 166 167 168 169 170 171 172 173 174 175 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales