개발일지 8

최종 - AWS로 웹페이지 배포하기 / 회고

1. 최종과제 및 회고 http://sparta-psk.shop/ Very RHCP ! 필수의 첫 공식 웹페이지 sparta-psk.shop 마지막주차 마지막과제인 웹페이지 제작후 aws를 통해 배포를 해보았다. 이제 로컬환경이 아닌 public한 상태로 웹페이지를 계속 오픈시킬 수 있게되었다. (aws 무료기간 한정) 해당 과제 컨셉은 팬명록인데, 내가 좋아하는 밴드 중 하나인 레드 핫 칠리 페퍼스(red hot chili peppers, 줄여서 rhcp) 형님들로 만들었다. 페이지에 사용한 기술들을 정리해보자면.. - html, css, javascript - jquery - python, flask - mongoDB - filezilla - aws (ec2) - ide : Pycharm 이렇게 사용..

SQL 정리

https://codeoasis.tistory.com/4 1주차 - DBeaver 및 기초명령어(Select, Where) 학습 1. DB와 SQL 일을 하다보면 크고작은 데이터들이 쌓이기 마련이다. (매출내역, 고객정보, 주문내역, 상품정보, 일자별 기상상황, 사고내역 등등..) 위와 같은 정보들은 당연히 시간이 지나면서 지속 codeoasis.tistory.com https://codeoasis.tistory.com/6 2주차 - group by, order by, alias 쿼리문을 통해 주어진 테이블을 조건에 맞게 재가공하고, 원하는 정보로 만드는 과정에서 결과값을 재구성하는 경우가 생긴다. 예를 들어 운영중인 쇼핑몰 주문내역으로부터 성별이나 나이, 지 codeoasis.tistory.com ht..

개발일지 2022.10.06

4주차 - 서브쿼리

SELECT u.user_id, u.name, u.email FROM users u inner join orders o on u.user_id = o.user_id where o.payment_method = 'kakaopay' -- 서브쿼리 : 쿼리 안의 쿼리. 미리 결과값을 확인한 하위쿼리문 그 자체를 하나의 테이블처럼 사용. 정렬유의 -- 서브쿼리 활용 예시(Where) >> IN 사용법 중요 SELECT user_id, name, email FROM users u WHERE user_id IN ( select user_id from orders o WHERE payment_method = 'kakaopay' ) -- 서브쿼리 활용 예시(Select) >> 기존 테이블에 새로운 필드항목을 추가할때 ..

개발일지/SQL 2022.10.06

3주차 - Join과 Union

1. Join 테이블에서 특정 정보를 읽을 때 부득이하게 다른 테이블의 정보와 함께 봐야할 상황이 생길 수 있다. 예를들어 포인트 정보가 담긴 테이블과 유저정보가 담긴 테이블이 있다고 할때 포인트가 많은 유저 순으로 보고자 한다면 포인트 정보와 유저정보를 하나로 묶어서 한번에 볼 수가 있다. Select * From point_users p Inner Join users u On p.user_id = u.user_id Order by point Desc 두 테이블간의 공통된 필드(user_id)가 있을 경우, 그 필드를 매개로 두 테이블을 이어주는 방식이다. (이러한 필드를 'Key'라고 한다.) join문에 합치려는 테이블을 입력한 뒤, On을 통해 두 테이블의 key 테이블(user_id)을 =로 이..

개발일지/SQL 2022.10.06

2주차 - jQuery, Ajax

1. Javascript와 jQuery, Ajax 개념? 일단 자바스크립트는 웹페이지 개발에 쓰이는 언어다. 그리고 그 자바스크립트 라이브러리 중 하나가 jQuery이며, Ajax는 자바스크립트에서 가능한 작업처리방식이다. 처음엔 Ajax도 라이브러리의 일종인 줄 알았는데 이름에 답이 있었다. Asynchoronous Javascript And XML '비동기 방식'으로 작업이 처리되는 방식을 말한다고 한다. 쉽게말해 한 페이지 내에서 각각의 작업들을 동시다발적으로 처리할 수 있는 방식이다. 반대되는 개념인 '동기 방식'에서는 페이지의 모든 작업들이 동기화되기 때문에 어떤 작업을 처리하려면 '새로고침'처럼, 서버로부터 필요한 데이터를 가져올 때까지 페이지 전체가 대기를 해야한다. 한번에 하나씩 작업들을 ..

2주차 - group by, order by, alias

쿼리문을 통해 주어진 테이블을 조건에 맞게 재가공하고, 원하는 정보로 만드는 과정에서 결과값을 재구성하는 경우가 생긴다. 예를 들어 운영중인 쇼핑몰 주문내역으로부터 성별이나 나이, 지역에 따른 구매선호도나 전환율 등을 보고싶다고 하자. 성별이야 남,녀 2가지 경우의 수만 생각하면 되니 각각에 대해 쿼리문을 날려도 된다. 근데 만약 고객의 성씨별로 회원 수를 보려고 한다면? slect * from users where name like '김%' slect * from users where name like '이%' slect * from users where name like '박%' slect * from users where name like '정%' . . . 최소 몇십개 이상은 족히 넘을 성씨마다 ..

개발일지/SQL 2022.09.26

1주차 - HTML 기초학습 (+CSS, Bootstrap, Javascript)

드디어 웹개발의 기초이자 기본인 html 언어에 대해 배워보았다. 일단 '웹'이라는 것이 어떤 방식으로 돌아가는지 알기 위해선 클라이언트와 서버에 대한 기본개념이 필요하다! 0. 클라이언트와 서버 네이버를 보자. 상단에 naver.com이라는 주소가 있고, 그 밑으로 각종 로고와 이미지, 텍스트들이 모여있다. 우리(사용자)는 이곳에서 뉴스기사를 보고, 로그인을 하며, 검색어를 입력해 필요한 정보를 찾게 되는데, 이 모든 활동을 하는 곳이 '클라이언트'다. 근데 눈 앞에 보이는 이 모든 자료들은 개개인의 컴퓨터에서 만들어진 게 아니라, 인터넷을 통해 '어딘가'로부터 전달받은 자료(데이터)일 것이다. 이 어딘가가 '서버'다. 예를들어 네이버라는 홈페이지는 고유한 도메인(naver.com)을 통해 볼 수 있으..

1주차 - DBeaver 및 기초명령어(Select, Where) 학습

1. DB와 SQL 일을 하다보면 크고작은 데이터들이 쌓이기 마련이다. (매출내역, 고객정보, 주문내역, 상품정보, 일자별 기상상황, 사고내역 등등..) 위와 같은 정보들은 당연히 시간이 지나면서 지속적으로 누적되는데 이 데이터들을 활용해 참고할만한 지표가 되기도 하고, 새로운 프로젝트를 위한 분석자료로 활용될 수도 있다. 그런데 이러한 데이터들이 너무나 방대해져 다루기 힘들어진다는게 문제다. 조그만 중소기업이야 어떻게든 사람 손으로 커버가 가능한다쳐도, 중견/대기업 규모로 넘어가면 이야기가 달라진다. 만약 고객의 신용정보나 자산정보를 다루는 금융기관에서 저렇게 엑셀로 관련 데이터를 다룬다고 생각한다면 진작에 망하고도 남았을 것이다. 대량의 데이터들을 별도의 DB로 관리하는 경우 필요할 때, 필요한 데이..

개발일지/SQL 2022.09.14