Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
初めてのSQL初めてのSQL
nasa9084nasa9084
自己紹介自己紹介
名前
北村壮大 : Masahiro Kitamura
HN : nasa9084
所属
北海道大学
工学部
情報エレクトロニクス学科
コンピュータサイエンスコース
情報認識学研究室
DBMSDBMS
DataBase Magagement System
DBを管理し、外部からの要求に応えてDBの操作をするソフトウェア
RDBMS
Relational Database Management System
ODBMS
Obj...
RDBMSRDBMS
関係代数を基礎概念としたDBMS
→Excelみたいな表形式
RDBMS製品RDBMS製品
Oracle
DB2
SQL Server
PostgreSQL
MySQL
SQLite
SQLSQL
RDBMS用問い合わせ言語
文法文法
文法は三種類に分類可能
DDL
Data De�nition Language
DML
Data Manipulation Language
DCL
Data Control Language
CRUDCRUD
RDBMSで最低限必要な機能
Create
Read
Update
Delete
方言と標準SQL方言と標準SQL
RDBMSごとに文法が少しずつ違う →標準SQLの策定
CREATECREATE
CREATE DATABASECREATE DATABASE
データベースを作る
CREATE DATABASE digiporo;
CREATE TABLECREATE TABLE
テーブル(表)を作る
CREATE TABLE birth (no INT, name VARCHAR(128), birthday DATE);
no name birthday
データ型(MySQL)データ型(MySQL)
整数型
INT
浮動小数点型
FLOAT, DOUBLE
日付・時刻型
DATE, TIME, DATETIME, TIMESTAMP, YEAR
文字列型
CHAR, VARCHAR
バイナリ文字...
INSERTINSERT
データベースに値を挿入する
INSERT INTO birth VALUES (1, "太郎", 1993-04-05);
INSERT INTO birth VALUES (2, "花子", 1994-05-06);...
SELECTSELECT
データベースから情報をとってくる
SELECT * FROM birth;
no name birthday
1 太郎 1993-04-05
2 花子 1994-05-06
3 よしこ 1995-06-07
列を指定する列を指定する
SELECT no,name FROM birth;
no name
1 太郎
2 花子
3 よしこ
WHERE句で条件を指定するWHERE句で条件を指定する
SELECT * FROM birth WHERE birthday=1995-06-07;
no name birthday
3 よしこ 1995-06-07
列と条件を両方指定する列と条件を両方指定する
SELECT name FROM table WHERE birthday=1995-06-07;
name
よしこ
算術演算算術演算
SELECT文では計算が可能
price amount
100 20
200 5
500 10
SELECT price*amount AS total FROM stock;
total
2000
1000
5000
WHERE句での計算WHERE句での計算
SELECT price*amount AS total FROM stock WHERE price*amount>2500;
total
5000
WHEREはSELECTより先に動くので別名を使え...
UPDATEUPDATE
データを更新する
UPDATE stock SET amount=0 WHERE price=100;
price amount
100 0
200 5
500 10
DELETEDELETE
データを削除する
DELETE FROM stock WHERE amount=0
price amount
200 5
500 10
まとめまとめ
DBを管理するソフトをDBMSという
DBMSには複数種類ある
RDBMSではSQLを使う
Upcoming SlideShare
Loading in …5
×

初めてのSQL

242 views

Published on

http://digiporo.connpass.com/event/30787/
2016/05/14

Published in: Engineering
  • Be the first to comment

  • Be the first to like this

初めてのSQL

  1. 1. 初めてのSQL初めてのSQL nasa9084nasa9084
  2. 2. 自己紹介自己紹介 名前 北村壮大 : Masahiro Kitamura HN : nasa9084 所属 北海道大学 工学部 情報エレクトロニクス学科 コンピュータサイエンスコース 情報認識学研究室
  3. 3. DBMSDBMS DataBase Magagement System DBを管理し、外部からの要求に応えてDBの操作をするソフトウェア RDBMS Relational Database Management System ODBMS Object-oriented Database Management System ORDBMS Object-oriented Relational Database Management System NoSQL Not only SQL
  4. 4. RDBMSRDBMS 関係代数を基礎概念としたDBMS →Excelみたいな表形式
  5. 5. RDBMS製品RDBMS製品 Oracle DB2 SQL Server PostgreSQL MySQL SQLite
  6. 6. SQLSQL RDBMS用問い合わせ言語
  7. 7. 文法文法 文法は三種類に分類可能 DDL Data De�nition Language DML Data Manipulation Language DCL Data Control Language
  8. 8. CRUDCRUD RDBMSで最低限必要な機能 Create Read Update Delete
  9. 9. 方言と標準SQL方言と標準SQL RDBMSごとに文法が少しずつ違う →標準SQLの策定
  10. 10. CREATECREATE
  11. 11. CREATE DATABASECREATE DATABASE データベースを作る CREATE DATABASE digiporo;
  12. 12. CREATE TABLECREATE TABLE テーブル(表)を作る CREATE TABLE birth (no INT, name VARCHAR(128), birthday DATE); no name birthday
  13. 13. データ型(MySQL)データ型(MySQL) 整数型 INT 浮動小数点型 FLOAT, DOUBLE 日付・時刻型 DATE, TIME, DATETIME, TIMESTAMP, YEAR 文字列型 CHAR, VARCHAR バイナリ文字列型 BINARY, VARBINARY 列挙型 ENUM 集合型 SET
  14. 14. INSERTINSERT データベースに値を挿入する INSERT INTO birth VALUES (1, "太郎", 1993-04-05); INSERT INTO birth VALUES (2, "花子", 1994-05-06); INSERT INTO birth VALUES (3, "よしこ", 1995-06-07); no name birthday 1 太郎 1993-04-05 2 花子 1994-05-06 3 よしこ 1995-06-07
  15. 15. SELECTSELECT データベースから情報をとってくる SELECT * FROM birth; no name birthday 1 太郎 1993-04-05 2 花子 1994-05-06 3 よしこ 1995-06-07
  16. 16. 列を指定する列を指定する SELECT no,name FROM birth; no name 1 太郎 2 花子 3 よしこ
  17. 17. WHERE句で条件を指定するWHERE句で条件を指定する SELECT * FROM birth WHERE birthday=1995-06-07; no name birthday 3 よしこ 1995-06-07
  18. 18. 列と条件を両方指定する列と条件を両方指定する SELECT name FROM table WHERE birthday=1995-06-07; name よしこ
  19. 19. 算術演算算術演算 SELECT文では計算が可能 price amount 100 20 200 5 500 10 SELECT price*amount AS total FROM stock; total 2000 1000 5000
  20. 20. WHERE句での計算WHERE句での計算 SELECT price*amount AS total FROM stock WHERE price*amount>2500; total 5000 WHEREはSELECTより先に動くので別名を使えないので注意
  21. 21. UPDATEUPDATE データを更新する UPDATE stock SET amount=0 WHERE price=100; price amount 100 0 200 5 500 10
  22. 22. DELETEDELETE データを削除する DELETE FROM stock WHERE amount=0 price amount 200 5 500 10
  23. 23. まとめまとめ DBを管理するソフトをDBMSという DBMSには複数種類ある RDBMSではSQLを使う

×