반응형

전체 글 121

웹대시보드 개발(1) 소스코드 버전 관리를 위한 Git과 Github.com 사용법

우리가 여태껏 작동했던 코드들은 우리가 맞춰준 환경에서만 작동한다. 다른 사람들에게 내가 짠 코드를 보여주는 방법은 이렇게 블로그에 코드를 올리는 방법이 있겠지만 이건 사실 막연한 방법이다. 코드를 더욱더 잘 보여주기 위해선 웹대시보드를 작성해 코드부터 동작방식까지 묶어 웹대시보드에 올리는 방법이 있다. 오늘은 첫번째 시간으로 소스코드를 관리 저장해주는 git과 git를 다루는 사이트 github.com를 알아보겠다. 우선 git에 대해 알아보자 git은 여러사람들의 소스코드를 관리하는 분산버전 관리시스템이다. git에 대한 자세한 얘기는 추후에 다시 하겠다. 두번째 github를 알아보자 github는 git를 활용한 웹사이트로써 git를 좀더 깔끔하게 만들면서 효율적인 작업이 가능하게 만든 사이트이다..

데이터 베이스(24) 조건문 where와 where not

지금까지 배운 데이터 베이스 조건문은 case나 if가 있다. 이제 새로운 조건문으로 논리연산자처럼 쓸수 있는 where문이 있다. where문을 알아보자 == 출시연도별로 묶은 데이터 중에 평균이 70이 넘는 데이터를 가져와라 select released_year,avg(stock_quantity) as average from books group by released_year having average > 70; 이렇게 데이터베이스상에 평균이 70이 넘는 데이터만을 가져온다. -- uqdated_ad 컬럼에서 null인 데이터를 가져와라 select * from comments where uqdated_ad is null; 값이 null인 데이터만 가져올수도 있다. 실무에서 때론 where문을 제외한..

데이터 베이스 2022.12.09

데이터 베이스(23) 인덱스 설정을 활용한 데이터를 유니크하게 만들기

데이터가 중복으로 들어가면 나중에 데이터를 불러오거나 데이터를 분석할때 큰 문제가 된다. 따라서 중복이 되면 안되는 데이터를 데이터 베이스상에 설정에서 유니크하게 바꾼다. 우선 데이터 테이블에 설정으로 들어가보자 이런식으로 화면이 나올것이다. 가장 밑에 Indexes를 클릭해보면 이렇게 화면이 나온다. 여기서 index name부분에 클릭해서 컬럼명으로 이름을 설정한다. 설정하게 되면 type부분을 클릭할수 있게 된다. 여기서 type을 unique로 바꾸고 unique하게 바꾸고 싶은 컬럼을 옆화면에서 체크 표시한뒤 apply를 누르면 된다. 그럼이제 유니크한 데이터로 중복되는 데이터는 저장되지 않는다.

데이터 베이스 2022.12.09

데이터 베이스(22) 데이터 베이스 3개이상을 합치는 법

데이터 베이스를 다루게 되면 실제론 더 많은 데이터를 다룬다. 그래서 당연히 데이터 베이스 2개를 합치는것으로 업무가 끝나지 않을것이다. 오늘은 그 방법을 알아보자 -- 데이터 reviews,reviewer,series를 합친다. select series.title,reviews.rating,concat(reviewers.first_name,' ',reviewers.last_name) as reviewer from reviews join reviewers on reviewer_id = reviewers.id -- 한번 더 쓰면 된다. 아때 on은 반대로 써준다. join series on series.id = series_id order by series.title,reviews.id; 3개 이상의 데이..

데이터 베이스 2022.12.08

데이터 베이스 (21) 데이터 베이스상에 null값 대체 ifnull

데이터 베이스 상에 null값을 대체하기 위해선 ifnull함수를 이용하면 된다. 파이썬에 fillna 함수와 기능이 유사하다. -- null값 대체 -- ifnull(컬럼명,대체할값) select students.first_name,ifnull(papers.title,'MISSING'),ifnull(papers.grade,0) from students left join papers on students.id = papers.student_id; 컬럼 paper와 grade의 null값이 대체 되었다.

데이터 베이스 2022.12.08

데이터 베이스(20) 데이터 삭제 시 참조된 데이터 삭제하기

데이터 삭제시 두테이블간에 연결된 컬럼이 있을경우 데이터가 연결되어 있다며 삭제되기 않는다. 이 문제를 해결하기 위해서는 테이블 설정창에서 해결해야 한다. 먼저 데이터가 연결된 테이블의 foreign keys 설정창에 들어간후 연결된 컬럼을 누른다. 바로 옆에 on update,on delete 설정창이 활성화 된다. 설정창이 활성화 되면 on delete 설정을 누른후 restrict를 cascade로 바꾼다. 이제 apply를 눌러 적용시킨다. 이제 입력란에서 삭제 시킨다.(데이터를 삭제할땐 돌이킬수 없으니 신중하게 없어도 되는 데이터를 선택한다) -- 테이블 설정 창에서 포링키 설정에서 삭제 설정에 케스케이드 선택하면 -- 참조 상관없이 삭제할수 있다.(참조된 데이터도 전부 삭제된다.) -- 연결된..

데이터 베이스 2022.12.08

데이터 베이스(19) 2개 테이블을 하나로 합치기 join함수

데이터 베이스는 실제 실무에서 쓰일때 유기적으로 연결된 데이터가 생길수 밖에 없다. 이때 MySQL은 데이터 베이스 테이블끼리 join함수로 합칠수 있는데 합치는 방법을 알아보자 우선 데이터 테이블을 형성할때 조건이 필요하다 두 테이블에 컬럼을 기준으로 합쳐야하며 합치기 전에 기준이 될 컬럼 둘을 연결시켜야 한다. 우선 연결하려고 하는 데이터의 형식과 설정이 맞아야 한다. 위에 customer_id와 id 컬럼의 형식과 설정을 맞춰주었다. orders 테이블 설정창 밑에 foreign keys를 클릭하고 foreign keys 이름을 설정하고 반응할 데이터를 설정 컬럼에서 customer_id와 id를 연결한다. 이제 데이터테이블을 만들고 입력창에 코드를 입력한다. -- 2개 테이블을 하나로 합치세요. ..

데이터 베이스 2022.12.08

데이터 베이스(18) case문,if문 작성법

만약에 데이터가 재고가 0에서 50이면, * 50~100이면, ** 101~150이면, *** 그렇지 않으면, **** 로 별표 표시하는 컬럼 stock 이라는 컬럼을 만든다면 어떻게 만들수 있을까 이럴때는 조건문을 쓰게 되는데 크게 두가지가 있다. 1)case문 case문은 end문과 꼭 같이 쓰이며 코드를 보면 알겠지만 파이썬의 if문과 유사한 형태를 띄고 있다. -- 재고가 0에서 50이면, * -- 50~100이면, ** -- 101~150이면, *** -- 그렇지 않으면, **** 로 표시하는 컬럼 stock 이라는 컬럼을 만든다. select * , -- 들여쓰기를 해준다. case -- 조건을 쓸때는 where가 아닌 when -- 조건을 만족할때 출력할값은 then을 쓰고 그 옆으로쓴다. ..

데이터 베이스 2022.12.08

데이터 베이스(16) group by 에서 Having을 사용하는 방법

group by된 상태에서는 group by 다음줄에 where가 되지 않는다. 에러가 나기 때문이다. 따라서 where대신 조건을 쓰고 싶다면 having을 써주면 조건을 붙일 수 있다. -- 각 고객별로 주문 금액 평균이 300달러 이상인 사람의 이름과, 평균금액을 -- 가져오시오. select c.first_name,c.last_name, avg(o.amount) from customers c join orders o on o.customer_id = c.id group by c.id -- where 대신 having having avg(o.amount) >=300;

데이터 베이스 2022.12.08