mizutani@ic.daito.ac.jp 2014
SQL
information system input process output
(information) (symbols) (information structure) (data) 201411 ton/kg m/feet km 2 /m 2
(data structure) (integer) (real) (boolean) (character) Pascal person const size = 64; // size type word = array[1..size] of character; // word person = record name: word; // person email: word; height: real; gender: char; age: 0..100; student: boolean; end;
person Pascal var he, she : person; // person he she // he.name = "taro"; he.email = "taro@hoge.ac.jp"; he.height = 175.3; he.gender = "M"; he.age = 20; he.student = true; she.name = "umeko"; she.email = "ume@foo.co.jp"; she.height = 170.0; she.gender = "F"; she.age = 24; she.student = false;
(information structure) (property) (value) (property) hasa S Q S has a property Q) S hasa (,Q) (S) = Q S (, ) hasa (, ) (, ) (, ) (, ) (,taro@hoge.ac.jp) (, )
hasa (table) (cm) field record 158 ume@foo.co.jp 172 taro@hoge.ac.jp 165 jiro@piyo.or.jp 170 hana@fuga.ac.jp Table: 1 5
(hierarchy) (upper concept) (lower concept) isa (tree) isa S P S is a P ) S isa P S P is isa isa 49 7
data set (set) a A A a A a A A a 1, a 2,..., a n {}, A = {a 1, a 2,..., a n } σ : 1, 2,..., n = {a σ(1), a σ(2),..., a σ(n) } A = {x x }
set operation A B U (union) (intersection) (difference) (complement) A B = {x x A x B} A B = {x x A x B} A B = {x x A x B} A c = {x x U A} 1 2 U = {x x 0 100 }, A = {y y U 7 } = {z z U 6 } A B, A B, A B, B A, A c A, B A ( a A) B A B (subset) A B A A A
= {,, } hasa (, ) = { } { } = {,, } = {} {} {} (empty set) ϕ A A ϕ = A, A ϕ = ϕ, A ϕ = A, ϕ A = ϕ, ϕ c = U ϕ 0
(direct product) (relation) A B a A b B (a, b) 2 ( binary relation) (a, b) (b, a) (a, b) = (c, d) a = c, b = d. A B = {(x, y) x A, y B} A B a A, b B 2 (a, b) A B. A = {a, b}, B = {x, y, z} A B = {(a, x), (a, y), (a, z), (b, x), (b, y), (b, z)}, B A = {(x, a), (x, b), (y, a), (y, b), (z, a), (z, b)}. A B R 2 (a, b) R arb arb bra A 1 A n = {(a 1,..., a n ) a i A i, i = 1,... n} (a 1,..., a n ) n (n-ary relation) R
a b 2 (a, b) A = {, }, B = {,, } R L = {(, ),(, )} A B R L, R L R l = {(, ),(, ),(, ),(, )} B A R l, R l, R l, R l 1 ap b a b A = {,, }, B = {,,, } P 2 aw b a b A = {,, }, B = {,,, } W
( 1 1=( ) 2=( ) 3=( ) 4= 5=( ) 1 ( 2 2
[ ] 40 1 2
:
case grammar 1968 Charles Fillmore
Table:
1. RDBMS 2. 3. (parallel computing) (Concurrent Computing) (distributed computing) (grid) (cloud computing)
(structured data) hasa (unstructured data) (metadata) (schema)
(database) (Database Management System) DBMS
Apple, Amazon Google
(data mining) 1 2 Web PageRank
RDBMS (table) (, ) RDBMS(Relational Database Management System) SQL(Structured Query Language) RDBMS RDBMS Microsoft Access( )/SQL Server, Oracle Database, IBM DB2/Infomix MySQL, PostgresSQL : Amazon RDB, Google Cloud SQL
(column) (row) (table) record i n- (, ) field 1 field 2 field 3 field 4 field 5 record 1 158 ume@foo.co.jp record 2 172 taro@hoge.ac.jp record 3 165 jiro@piyo.or.jp record 4 170 hana@fuga.ac.jp.... (1 ) n- field 1 =, field 2 =, field 3 = cm, field 4 =, field 5 =..
SQL