반응형
*MySQL 데이터 개수 가져오기
SELECT COUNT(컬럼명) FROM 테이블
- 예제) article 테이블에서 id 개수 가져올 때
id | title | body |
1 | a | a |
2 | b | b |
4 | d | d |
6 | f | f |
7 | g | g |
8 | h | h |
*아래 int 값 반환 함수를 이용
selectRowIntValue("SELECT COUNT(id) FROM article");
결과 : 6
// int값 반환
public int selectRowIntValue(String sql) {
Map<String, Object> row = selectRow(sql);
for (String key : row.keySet()) {
Object value = row.get(key);
if (value instanceof String) {
return Integer.parseInt((String) value);
}
if (value instanceof Long) {
return (int) (long) value;
} else {
return (int) value;
}
}
return -1;
}
// String값 반환
public String selectRowStringValue(String sql) {
Map<String, Object> row = selectRow(sql);
for (String key : row.keySet()) {
Object value = row.get(key);
return value + "";
}
return "";
}
// Boolean값 반환
public boolean selectRowBooleanValue(String sql) {
int rs = selectRowIntValue(sql);
return rs == 1;
}
*MySQL 컬럼을 그룹화 하여 개수 가져오기
1. 컬럼 그룹화 방법
SELECT 컬럼 FROM 테이블 GROUP BY 그룹화할 컬럼명;
2. 조건 설정 후 그룹화 방법
SELECT 컬럼 FROM 테이블 WHERE 조건식 GROUP BY 그룹화할 컬럼명;
3. 컬럼 그룹화 후 조건 설정
SELECT 컬럼 FROM 테이블 GROUP BY 그룹화할 컬럼명 HAVING 조건식;
- 예제) article 테이블에서 boardId 내에서 특정 값 그룹화 하여 개수 구하기.
id | title | boardId |
1 | a | 1 |
2 | b | 1 |
3 | c | 2 |
4 | d | 2 |
7 | g | 1 |
8 | h | 1 |
* article 테이블에서 boardId 그룹화 하여 그룹화 한 것에 따른 boarId 개수 조회
* boardId가 1 이상 인 것의 개수 구하기
selectRowIntValue("SELECT boardId, COUNT(boardId) AS cnt FROM article WHERE boardId > 1 GROUP BY boardId;");
* boardId가 2 이하 인 것의 개수 구하기
selectRowIntValue("SELECT boardId, COUNT(boardId) AS cnt FROM article WHERE boardId < 2 GROUP BY boardId;");
반응형
'프로그래밍 > 자바, JDBC' 카테고리의 다른 글
MySQL 컬럼 생성 시 의미 (0) | 2020.06.20 |
---|---|
MySQL 코드 관련(INNER JOIN / 사원, 부서DB) (0) | 2020.06.19 |
SQL 명령어 (0) | 2020.06.16 |
MySQL, JDBC 연동 (0) | 2020.06.16 |
스레드 (Thread) (0) | 2020.06.15 |