SQL 45

IS NULL, 비트 단위 논리연산자

IS NULL 필드의 값이 NULL인 경우를 조회하고자 할 때 사용한다. NULL은 결측치로 값이 없음을 의미한다. 공백과 0은 값이 있는 것인데, NULL은 값이없다 자체를 의미한다. 데이터는 결측치를 어떻게 처리해주느냐에 따라서 분석이 완전히 달라져서 NULL값 처리가 중요하다. 문제: 장학금 정보에서 성적장학금이 null인 레코드를 찾아보아라. 문제: 성적장학금, 국가장학금, 근로장학금 모두를 받은 학생이 있는지 찾아보자. 코드를 두 가지로 나타낼 수 있다. 이렇게 해도 같은 결과가 출력된다. 비트 단위 논리연산자 비트연산자는 데이터를 비트 단위로 연산한다. 비트는 0과 1로 표현하는 정보의 최소단위 따라서 비교하는 두 값을 비트 단위로 나열한 뒤 각 자리수를 연산한다. AND -> & OR -> ..

SQL 2023.08.16

BETWEEN, IN, LIKE

BETWEEN BETWEEN A AND B를 그대로 사용한 것 A와 B사이에 값을 의미하는 명령어 문제: 1학년 1학기 성적이 3.0 이상이고 4.0이하인 학생들만 출력해보자. 이렇게하면 3.0이상이면서 4.0미만인 1학년 1학기 컬럼과 학년 컬럼이 있는 레코드가 출력된 모습을 확인해볼 수 있다. IN 소괄호 안에 값이 있는지 여부를 조회하기 위한 연산자. 문제: 학생 테이블에 학과 정보를 가지고 예제코드를 작성해보자. 학과가 물리학과와 화학과인 학생들만 있는 레코드 중에서 학번, 이름, 학과 레코드만 출력하라. IN은 학과 컬럼에서 물리학과, 화학과를 제외한 나머지는 false로 인식하여 true인 물리학과와 화학과만을 출력하는 구조라고 이해할 수 있다. 문제2: 과목 정보에서 과목번호, 과목명, 이수..

SQL 2023.08.16

연결연산자, 논리연산자

연결연산자란? 테이블 내에서 각 컬럼을 연결하여 하나의 결과를 컬럼으로 얻거나 나타내거나 문자열을 추가하여 새로운 데이터를 나타내는 컬럼을 추가할 때 사용하는 방법 문제: 이재영 학생은 서울특별시 성북구에 거주 중입니다. 라는 문구를 나타내고 싶다고 가정하면 이런 경우 우리는 연결연산자를 사용할 수 있다. 문제: 어떤 과목이 어떤 과목구분으로 분류되어 있는지 subject테이블에서 알아보기. 논리연산자란? AND연산 문제: 학생정보에서 학생 학년이 2학년 1학년 학생 정보 중에서 마일리지 점수가 300점 이상인 경우에만 얻고 싶다고 가정해보자. 이렇게 하면 1학년은 모두 출력되고 2학년 중 마일리지 300이상인 레코드들만 출력된다. 코드 수정 ▼ OR연산자 문제: 1, 2학년 학생들과 마일리지가 300이..

SQL 2023.08.16

AS, 산술연산

Alias 결과테이블의 컬럼명을 별칭하고자 할때 사용된다. 주의점은 출력되는 결과에 컬럼명만 일시적으로 변경할 뿐 실제 컬럼명이 변경되는 것은 아니다. 컬럼명을 입력하는 것이라서 입력시 문자열로 입력된다. 사칙연산 덧셈 내용들을 살펴본다. 이러면 컬럼명이 1+1로 출력되는 것을 확인할 수 있다. 여기서 Alias를 사용해보면 이처럼 출력 테이블의 컬럼명을 ALIAS를 통해서 변경할 수 있다. 만약 '1 더하기 1' 처럼 띄어쓰기가 들어가는 컬럼을 지정하고 싶으면 따옴표를 사용해야 하지만, 띄어쓰기를 사용하지 않을 경우는 즉 한 단어로 쓰고자 하는 경우는 그냥 작성해도 된다. SUBJECT테이블에서 중복을 제거하고 학과번호을 학과이름으로 컬럼명을 바꿔보자. (스스로 해보기) 기존 컬럼 (학과번호)의 컬럼명..

SQL 2023.08.14

SELECT, DISTINCT, ORDER BY

SQL실습환경 https://sqlschool.co.kr/ SQooL 웹페이지에서 실행 가능한 교육 목적의 SQL 튜토리얼 사이트입니다. 별도의 설치 없이 기본 SQL 구문을 실습해 볼 수 있습니다. sqlschool.co.kr SELECT * -> 데이터 내 모든 컬럼을 선택할 때 사용한다. FROM -> 테이블 정보를 가져올 때 사용한다. SELECT는 위와 같이 사용이 가능하지만, 일반 수식 연산을 출력할 때도 가능하다. SQLLite 환경은 기본적으로 동적 자료형 환경을 가진다. 따라서 정수들 간에 나눗셈의 경우 그 결과가 정수로 반환되어서 1이 출력된다. 반대로 각각의 연산 나눗셈을 실수형으로 표기한다면???? ▽ 이처럼 자료형 자체가 동적으로 결정되기 때문에 이러한 현상이 나타난다. DISTI..

SQL 2023.08.14

Frontend와 Backend란?

Html이란? Hyper text markup language(하이퍼텍스트 마크업 언어) 하이퍼텍스트는 하이퍼링크처럼 참조(하이퍼링크)를 통해서 한 문서에서 다른 문서로 즉시 접근이 가능하도록 하는 텍스트를 의미한다. 마크업 언어는 문서의 구조를 표현하는 역할을 한다. 예를 들어서 "이것은 제목이다. ", "이것은 타이틀이다." 처럼 마크업언어도 있고 마크업 다운 언어도 있다. 사용법: ※ 쉽게 말해, 웹을 만들기 위한 가장 기초적인 언어 HTML은 프로그래밍 언어는 아니다???????? HTML은 문서의 골격이다. PHP도 프로그래밍 언어인데 왜??? 프로그래밍 언어와 마크업 언어의 차이점 프로그래밍 언어의 정의부터 살펴보면 문제를 해결하기 위해 컴퓨터에게 주어지는 처리방법/ 순서를 정해주는 명령문을 ..

SQL 2023.08.14

PHP + MySQL 서버 세팅으로 웹 페이지 만들기 (오류로 잠시 중단)

php와 MySQL연결 .html파일을 만들거나 mysql을 만들면 누군가 접속을 해서 파일에 접근하거나 데이터에 접근해야하는데, 내 컴퓨터에 설치를 해놓으면 다른 사람들이 접근할수 없으니 인터넷 상에서 구축을 한다. 컨테이너가 하나의 컴퓨터라고 생각하면 된다. groomide는 5개 까지 무료로 만들 수 있다. PHP는 C나 JAVASCRIPT, 파이썬처럼 프로그래밍 언어로 워드 프레스가 php로 만들어짐. 워드 프레스로 클릭 몇 번이면 홈페이지를 만들어 php로 수정할 수 있다. 다른 언어와의 차이점은 초보자도 처음부터 웹 서비스를 구축할 수 있다는 장점이 있다. 하지만 이게 단점이 되기도 한다. 예를 들어서 파이썬의 django와 같은 framework를 사용해서 웹 서비스를 구축하면 로그인/ 게시..

SQL 2023.08.14

MySQL 환경설정(GroomIDE)

와!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 정말 어려웠다 무려 한시간 반동안 난 이 환경에 내 php를 띄우기까지 노오력을 하였다. 다른 분들의 어려움을 덜어주고자 구름IDE로 하는 방법을 알려주고자 한다. 업데이트는 나같은 초보자들에게 매우 Poison 컨테이너 생성 https://ide.goorm.io/ 구름HOME 구름은 클라우드 기술을 이용하여 누구나 코딩을 배우고, 실력을 평가하고, 소프트웨어를 개발할 수 있는 클라우드 소프트웨어 생태계입니다. www.goorm.io 인프런에 '생애 첫 SQL Witj 제코베' 강의를 들으면서 sql을 공부하고 있는데 당시는 2020년 지금은 2023년 너무나도 버전이 많이 달라졌다. 그냥 아에 다른 사이트가 된 상태 i just found that..

SQL 2023.08.09

데이터베이스 이론

1. DB데이터베이스도 프로그램이다.체계화된 데이터들의 모임여러 응용 시스템들의 통합된 정보를 저장하여, 운영할 수 있는 공용 데이터의 묶음논리적으로 연관된 하나 이상의 자료 모음으로, 데이터를 고도로 구조화함으로써 검색/ 갱신 등의 데이터 관리를 효율화함.DBMS는 데이터베이스를 관리하는 시스템 1-1. DB의 장점데이터 중복 최소화데이터 공유일관성, 무결성, 보안성 유지최신의 데이터 유지데이터의 표준화 기능데이터의 논리적, 물리적 독립성용이한 데이터 접근데이터 저장 공간 절약1-2. DB의 단점DB 전문가 필요 (은행 고객 정보 데이터베이스로 관리함. 어떻게 관리하느냐에 따라서 속도 차이가 생긴다.)많은 비용 부담 시스템의 복잡성❓ 데이터 베이스 왜 사용해요? 그냥 엑셀에 하면 안되나요?엑셀로 데이터..

SQL 2023.08.09

SQL 조건문

조건문 GOOD 과 JOB이 같다면 HELLO 아니면 WORLD 로 출력 GOOD과 GOOD이 같아면 HELLO를 출력 오라클에서는 DECODE, CASEWHEN MSSQL에서는 CASEWHEN MYSQL에서는 IF, CASEWHEN을 사용 JOIN(교집합) inner join은 교집합을 출력을 한다. Customers와 orders를 join해보자. 설명: Orders에서 OrderID, Customers에서 CustomerName, Orders에서 OrderDate 를 출력할건데, 테이블 기준은 Orders Customers가 Orders의 CustomerID가 Customers에 CustomerID와 같은 레코드만을 추출하여 옆에 붙이겠다. 그래서 SELECT 해서 나온 OrderID, Custom..

SQL 2023.08.09