Data Manipulation with MySQLAbout MySQL Open source SQL database system Dual license - GPL +...

Preview:

Citation preview

Data Manipulation with MySQLEvangelos Pournaras, Izabela Moise, Dirk Helbing

Evangelos Pournaras, Izabela Moise, Dirk Helbing 1

About MySQL

• Open source SQL database system• Dual license - GPL + commercial license• Relational database management system• Integration with Java, Python, PHP, Perl, etc.

Evangelos Pournaras, Izabela Moise, Dirk Helbing 2

Language Elements

ClausesExpressionsPredicates

QueriesStatementsInsignificant white space

Evangelos Pournaras, Izabela Moise, Dirk Helbing 3

Queries

• Most common operation

• Data retrieval

• No persistent effects on the database

• Describes the data, actual retrieval operations handled by thedatabase management system

• subqueries, e.g. in a WHERE predicate

SELECT column FROM table WHERE predicateGROUP BY column HAVING predicate ORDER BY column

Evangelos Pournaras, Izabela Moise, Dirk Helbing 4

Data Manipulation

Data Manipulation Language (DML)

• INSERT

• UPDATE

• DELETE

• MERGE

Evangelos Pournaras, Izabela Moise, Dirk Helbing 5

Data Types

Evangelos Pournaras, Izabela Moise, Dirk Helbing 6

Numeric Data Types

Evangelos Pournaras, Izabela Moise, Dirk Helbing 7

String Data Types

Evangelos Pournaras, Izabela Moise, Dirk Helbing 8

Data & Time Data Types

Evangelos Pournaras, Izabela Moise, Dirk Helbing 9

Spatial Data Types

Evangelos Pournaras, Izabela Moise, Dirk Helbing 10

Operators

Evangelos Pournaras, Izabela Moise, Dirk Helbing 11

Arithmetic Operators

Evangelos Pournaras, Izabela Moise, Dirk Helbing 12

Comparison Operators

Evangelos Pournaras, Izabela Moise, Dirk Helbing 13

Logical Operators

Evangelos Pournaras, Izabela Moise, Dirk Helbing 14

MySQL Demonstration

Evangelos Pournaras, Izabela Moise, Dirk Helbing 15

MAMP Software Package

Easy all-in installationhttp://www.mamp.info/en/

Evangelos Pournaras, Izabela Moise, Dirk Helbing 16

NervousNet Database

SENSOR_0AccelerometerSENSOR_1BatterySENSOR_2GyroscopeSENSOR_3HumiditySENSOR_4LightSENSOR_5Magnetic

SENSOR_6ProximitySENSOR_7TemperatureSENSOR_8NoiseSENSOR_9PressureSENSOR_aConnectivitySENSOR_bBluetooth Beacon

Evangelos Pournaras, Izabela Moise, Dirk Helbing 17

SQL Statements I

>SHOW DATABASES>SHOW TABLES>DESCRIBE SENSOR_0>CREATE DATABASE TESTDB>SELECT UUID,RecordTime,Rms FROM SENSOR_8 WHERE Rms>20000>SELECT UUID,RecordTime,Rms FROM SENSOR_8WHERE Rms BETWEEN 10000 AND 20000>SELECT UUID,RecordTime,Rms FROM SENSOR_8WHERE Rms>20000 UNION SELECT UUID,RecordTime,TemperatureFROM SENSOR_7 WHERE Temperature>36.0>SELECT DISTINCT UUID FROM SENSOR_8 WHERE Rms>15000

Evangelos Pournaras, Izabela Moise, Dirk Helbing 18

SQL Statements II

>CREATE TABLE table_01(id INT)>INSERT INTO table_01(id) VALUES(2)>UPDATE table_01 SET id=200 WHERE id=1;>CREATE TABLE table_02(id INTEGER,info VARCHAR(50),date DATE NOT NULL,PRIMARY KEY (id, info));>INSERT INTO table_02 (id, info, date)VALUES (1, ’Hello’, ’1990-01-05’)

Evangelos Pournaras, Izabela Moise, Dirk Helbing 19

Proposed Literature

Mysql 5.5 reference manual.Technical report, MySQL AB, 2015.

Evangelos Pournaras, Izabela Moise, Dirk Helbing 20

What is next?

• Visualization and plotting

Evangelos Pournaras, Izabela Moise, Dirk Helbing 21

Recommended