본문 바로가기

LearningJavaScript/SQL

[SQL] Schema & Query Design To do: 1. 데이터 간 다양한 관계 2. 데이터 간 관계를 기술하는 SQL 익히기 3. 합리적이고 효율적인 방법으로 데이터베이스 구성하기 4. 데이터베이스에서 관련 정보를 찾기 위한 SQL 쿼리 작성 방법 Schema 데이터베이스에서 데이터가 구성되는 방식과 서로 다른 entity간의 관계에 대한 설명, 즉, 데이터베이스의 청사진과 같다. entity: 테이블로 표현되는 데이터의 단위 field: 각 entity에는 해당 엔티티의 특성을 설명하는 fields가 있다. 테이블/행렬의 열(coloumn)에 해당된다. entity의 관계 일대 다(one-to-many)인 경우 1인 entity의 id no.를 이용해 다인 테이블에 적용시키면 보다 효율적이다. 다:다인 경우 join table을 이용해, .. 더보기
[SQL] Getting Started SQL Structured Query Language의 약자로 데이터베이스용 프로그래밍 언어인 SQL query를 데이터베이스에 보내 원하는 데이터를 뽑아올 수 있다. 지금까지는 in-memory와 file I/O를 사용해왔지만, 둘 다 한계점이 있었다. 먼저, 일반적으로 서버보다 클라이언트에 저장하게되는 in-memory의 경우, 데이터가 저장된 서버 혹은 클라이언트를 끄면 데이터가 사라지는 큰 단점이 있었다. 다음으로, 서버에 서버 파일시스템이 저장되는 file I/O의 경우, 원하는 데이터만 가져올 수가 없기때문에, 파일을 통째로 가져온 뒤, 서버에서 부담이 되는 필터링 처리가 필요했다. 따라서, 필터링 외에도 file I/O로 구현이 힘든 데이터 관리를 위해 필요한 여러 기능을 갖고 있는 데이터에.. 더보기
[SQL] user의 name과 email 그리고 그 user가 속한 role name(컬럼명: roleName)을 찾기 위한 SQL을 작성해주세요. 속한 role이 없더라도, user의 name과 email,role name을 모두 찾아야합니다. --> 더보기
[Database] SQL SQL (Structured Query Language) 데이터베이스 용 프로그래밍 언어로, 데이터베이스에 Query(질의문)를 보내 원하는 데이터를 뽑아 올 수 있다. 여기서 Query는 데이터베이스의 필요성 지금까지 in-memory(클라이언트/서버에 저장)와 file i/o(서버에 저장하는)에 저장해왔는데 뭐가 문제인가? in-memory의 경우, 끄면 데이터가 다 사라지고, file I/O의 경우 원하는 데이터를 갖고 오기 위해서는 모든 데이터를 가져온 뒤에 서버에서 필터링이 필요했기 때문에 비효율적이다. 따라서 필터링를 이용한 file i/o로도 구현이 힘든 데이터를 관리하는데 특화된 서버인 데이터베이스를 사용하는 것이다. 데이터베이스란? 엑셀 스프레드시트같이 생겼다.. 심지어 필터 기능도 된다.. 더보기