전체 글

궁금했던 점 FROM 다음에 왜 ab_kakao_as_receipt 테이블을 기준 컬럼으로 잡고 LEFT JOIN을 하는지 이해가 안 갔는데, 접수건수는 무조건 보여줘야 하는 항목이기에 접수 테이블을 기준값으로 잡고, product을 LEFT JOIN 했음을 알 수 있었다. (고마워요 YJ ♥) ON은 테이블끼리 관계를 맺게 하는 거고, 매칭 시켜주는 역할을 하는 정도로 생각하면 될 것 같다. 오늘의 2문제도 열심히 풀어봐야지!
-- 1)2022년 3월 이후 가입한 유저의 ID SELECT userid FROM ab_user WHERE createAt > = '2022-03-01'; -- 2) AS챗봇의 제품별 총 접수건수 SELECT COUNT(a.kakaoAsReceiptSeq),b.productName FROM ab_kakao_as_receipt a LEFT JOIN ab_kakao_as_product b ON a.kakaoAsScenarioSeq = b.kakaoAsScenarioSeq GROUP BY b.productName; --count는 집계함수여서 GROUP BY에 있는 거를 사용할 수 있음-- LEFT JOIN .. 에 대해 이해했다고 생각해도, 이해한 게 아니었나. 정말 어려운 JOIN의 세계. 얼른 다시 정..
-- 주문 상품 가격이 1,000원인 것의 개수를 가져오세요 SELECT COUNT(*) FROM tb_order_item WHERE order_price = 1000; -- 주문 상품의 가격이 1000원 초과 인 것들의 합을 구하시오 SELECT SUM(order_price) FROM tb_order_item toi WHERE order_price > 1000; -- 주문 상품의 가격이 1000원 초과 2000원 이하 인 것들의 주문 상품 상태를 가져오세요! SELECT order_item_status FROM tb_order_item WHERE order_price > 1000 AND 2000 >= order_price; -- 주문 상품의 가격 별 개수를 가져오세요. SELECT order_price..
모바일 배너 관리를 위한 어드민 기획을 진행하고 있다. 배너 관리 기획은 처음인지라 어떤 규격과 사이즈의 형식으로 배너 관리가 필요한지 확인이 필요해서 바쁜 와중에 알아보았다. 배너타입 유형 - 모바일 배너 - 인라인 직사각형 - 리더보드 타입으로 보았을 때, 이렇게 위 세가지 유형의 배너가 존재하고, 크기는 각각 다르다. 이게 다 배너라고 표현하는 줄 알았는데 명칭도 다르고, 각각 제공하는 사이즈가 다르다. 물론 모바일과 웹 사이즈, 고해상도 디스플레이 기기까지 사이즈가 개별로 존재한다. 우리가 평소 보았던 서비스의 대부분은 인라인 직사각형 아니면, 리더보드 형이었던 것 같다. 배너의 유형을 잘 구분할 줄 아는 것도 중요한 것 같다. 사용 케이스
현재 사이드로 진행하고 있는 프로젝트 중에서, 확인하고 싶은 지표가 생겼다. 아직 데이터 시각화 도구에 세팅이 안 되어있던 상황인지라 일일이 지표를 확인할 수밖에 없는 상황 속에서 머릿속에 번득 든 생각이 "SQL!!!!!!!!"이었다. 오늘 확실히 알고 싶었던 정보는, 조건 1) 8월 29일~9월 30일까지의 사용자 중에서 조건 2) 닉네임이 PR로 시작하는 데이터를 추출하기 오은영 박사님(애칭)은 분명 SELECT 이후 칼럼 값을 지정해야 한다고 했었는데, 그렇다면 나는 닉네임이 필요한 것이니 Nickname을 넣으면 되지 않을까 했는데, * >는 전체를 나타내는 것이므로, 닉네임을 기입해도 무관하다고 했다. 비록 DBeaver에는 데이터 값은 없지만, 임의로 한 번 쳐보기나 하자!라는 마음으로 작성..
SQL를 이론으로 오랜 시간 공부했으나, 막상 실습해보려면 굉장히 막연하고 어렵게 느껴지는 쿼리 작성하기! 오늘은 개발자 지인의 친절한 가르침을 받아 DBeaver 실습을 진행해 보았다. "아티스트 이름에 B가 포함된 아티스트의 이름을 보여주세요" 위 문장에서 무엇부터 답을 찾아내야 할까? 바로 "이름을 보여주세요." 다. 컬럼값을 먼저 설정해줘야 한다. 여기서 바로 컬럼값만 친다고 해서 되는게 아니라, "From" 을 통해 값을 꼭 지정해줘야 한다. □□ 의~ □□ 을 보여주세요, 의 "□□의" 값을 지정해줘야 한다. 그 다음 미션이 남았다. "아티스트 이름에 B가 포함된!" 비개발자에게는 난이도가 높은 문제가 아닐 수 없다. 우선 SELECT, FROM 다음에 특정 쿼리문에 조건을 형성하려면 WHER..
스낵바 Snackbar 스낵바(Snackbar)는 사용자가 특정 액션을 행했을 경우, 그에 대한 피드백을 전달해줄 때 사용된다. 별도의 액션을 추가하는 것도 가능하다. 이를 테면, "취소" 기능이나, 링크 이동 등의 추가 기능이 가능한 것. Snackbar는 기본적으로 하단 혹은 상단에 노출되는 타입을 사용하며, Android는 하단에만 스낵바를 제공하고 상단 스낵바를 제공해야할 경우에는 OS 기본을 사용한다. 토스트 팝업 Toast 스낵바와 거의 유사하지만, 토스트 팝업의 경우 한 가지 차이점이 있다. 바로 별도의 액션을 추가할 수 없다. 해당 액션에 대한 "피드백"만 주는 것이다. 또한 토스트의 경우 화면 중앙 혹은 하단에 위치한다. 상단에 위치하는 것은 토스트 팝업이 아니라고 보통 여긴다.
작년 가을 SaaS형 서비스를 오픈했을 때만 해도, 회원탈퇴와 휴면 정책은 먼 일이었다. 당장 회원도 없으니 우선은 회원탈퇴가 ASAP은 아닌 상황이었기 때문이다. (이거 아니더라도 할 일이 산더미였다..) 하지만, 이윽고 생각지도 못한 변수가 찾아왔으니 그건 바로 ISMS 보안인증관리 심사다. 우리 서비스는 이번 범위에는 해당이 안 될 거라는 모두의 예상과는 달리 보안인증관리 심사의 대상이 되었기 때문 더보기 * ISMS란 : Information Security Management System 의 약자이며, "정보 보안 경영 시스템" 이라고 해석함 기업이 민감한 정보를 안전하게 보존하도록 관리할 수 있는 체계적 경영시스템이라고 정의함! 도마에 오른 여러가지 누락된 항목들 중 하나가 '회원탈퇴 프로세스..
우지이
어디까지 닿을까 나의 기획