[TIL] 220524

Moon·2022년 5월 24일

SQL

  • 웹개발종합반의 결제수단별 주문건수를 내림차순으로 정렬하기!
select payment_method, count(*) from orders 
where course_title = '웹개발종합반' 
group by payment_method 
order by count(*) desc
  • 한 쪽에는 있는데 한 쪽에는 없는 것을 갖고 통계내고 싶을 때 left join을 사용한다.

7월10일 ~ 7월19일에 가입한 고객 중,
포인트를 가진 고객의 숫자, 그리고 전체 숫자, 그리고 비율

select count(point_user_id) as pnt_user_cnt,
	   count(*) as tot_user_cnt,
	   round(count(point_user_id) / count(*), 2) as ratio
from users u 
left join point_users pu on u.user_id = pu.user_id 
where u.created_at between '2020-07-10' and '2020-07-20'

🐢 거북이스터디

  • for문과 while문에 대한 실습을 했다.
 int input[] = new int[10];
       System.out.println("10개의 숫자를 입력하세요: ");

        for (int i = 0; i < input.length; i++) {
            input[i] = sc.nextInt();
        }

        for (int i = 0; i < input.length; i++) {
            if (input[i] % 2 == 0) {
                even++;
            } else {
                odd++;
            }
        }

10개를 입력받는다길래 아무 생각 없이 바로 크기 10인 int배열을 생성했는데 완성하고나서 생각해보니 반복문 실습인데 배열을 이용하는 게 맞는지에 대한 의문이 들었다. 틀린 건 아니지만 뭔가 이상한 느낌이었다.

역시 튜터님 설명을 들으니 배열은 쓸 필요가 없었다.

for (int i = 0; i < 10; i++) {
	int n = sc.nextInt();
    
    if (n % 2 == 0) even+;
    else odd++;
}

지금 스터디에서 하는 부분은 앞부분이고 원격 강의에서 배운 부분들을 다시 차근차근 해 보는 느낌이라 어렵지 않아서 오히려 재밌다. 뒷부분 내용으로 가면 어려워질 수도 있겠지만 이렇게 기초 내용도 다시 한 번씩 구현하고 튜터님의 코드와 비교해보면서 더 논리적으로 접근하는 방법, 문법에 대한 부분을 공부할 수 있어서 좋다.

지금 자바의 정석을 보고있는 중인데 개념,문법공부와 별개로 객체지향 설계와 구현에 대한 연습도 해야할 것 같다.

profile
매일 성장하는 개발자 되기😊

1개의 댓글

comment-user-thumbnail
2022년 5월 24일

우와 점점 발전하고 있네요~! 문정님 화이팅이에요! :D

답글 달기