MySQL: Einfaches Rechnen.

Ähnliche Dokumente
MySQL: Einfaches Rechnen.

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

Datenbanken: Datenintegrität.

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski.

MySQL-Befehle. In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben.

SQL für Trolle. mag.e. Dienstag, Qt-Seminar

SQL-Befehlsliste. Vereinbarung über die Schreibweise

SQL und MySQL. Kristian Köhntopp

5.8 Bibliotheken für PostgreSQL

Installation MySQL Replikationsserver

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten

SQL Tipps und Tricks Part II

MySQL, phpmyadmin & SQL. Kurzübersicht

Labor 3 - Datenbank mit MySQL

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

INFORMATIONSUNTERLAGEN. Grundzüge der SQL-Programmierung. Vag 09/2005

Multimedia im Netz Wintersemester 2013/14. Übung 03 (Nebenfach)

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software

U 8 SQL. = Structured Query Language (heute auch Standard Query Language) ALLGEMEIN:

Einstieg in das SQL- und Datenbanktuning Loblied auf den Tabellen-Index!

CREATE TABLE-Syntax

Xampp Administration und Grundlagen. Stefan Maihack Dipl. Ing. (FH) Datum:

Datenbanken SQL. Insert, Update, Delete, Drop. Krebs

ACCESS SQL ACCESS SQL

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language)

SQL-Vertiefung. VU Datenbanksysteme. Reinhard Pichler

Datenbanken erstellen Liste von Datenbanken anzeigen Datenbanken löschen. MySQL 4, 5. Kapitel 06: Datenbanken. Marcel Noe

Cassandra Query Language (CQL)

Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5

PHP und MySQL. Integration von MySQL in PHP. Zellescher Weg 12 Willers-Bau A109 Tel Michael Kluge (michael.kluge@tu-dresden.

PostgreSQL unter Debian Linux

Übung Datenbanken in der Praxis. Datenmodifikation mit SQL

Grundkonzepte von SQL

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

Leseprobe: SQL mit MySQL - Band 4 Kompendium mit Online-Übungs-DB. Kompendium zur schnellen Kurzinformation der Datenbanksprache SQL/MySQL 5.

Lösungen der Übungsaufgaben von Kapitel 10

DB1 Abgabe Umsetzung der Callcenter Datenbank nach SQL von Daniel Häfliger, Dominik Süsstrunk und Reto Brühwiler

DATENBANKEN & SQL. Martin Schmidt Berufsschule Obernburg

Michaela Weiss 01. April Lerneinheit 4: Relationale Datenbanken am Beispiel von MySQL

105.3 SQL-Datenverwaltung

SQL Tipps und Tricks Part III

Web Technologien Klassische Datenbanken am Beispiel von MySQL

Fachhochschule Kaiserslautern Labor Datenbanken mit MySQL SS2006 Versuch 1

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL

SQL structured query language

Die SQL-Syntax für den Befehl CREATE TABLE sieht folgendermassen aus:

Web-Technologien. Prof. Dr. rer. nat. Nane Kratzke SQL. Praktische Informatik und betriebliche Informationssysteme

SQL-Anweisungen. SELECT (SQL Data Query Language)

Beispiel 1: Filmdatenbank

MySQL Queries on "Nmap Results"

PHP + MySQL. Die MySQL-Datenbank. Hochschule Karlsruhe Technik & Wirtschaft Internet-Technologien T3B250 SS2014 Prof. Dipl.-Ing.

7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2

Sructred Query Language

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum:

Datumsangaben, enthält mindestens Jahr, Monat, Tag

PHP & MySQL. MySQL Einführung. Zellescher Weg 12 Willers-Bau A109 Tel Michael Kluge (Michael.Kluge@tu-dresden.

Die Datenmanipulationssprache SQL

Java Application 1 Java Application 2. JDBC DriverManager. JDBC-ODBC Br idge. ODBC Driver Manager. Dr iver C. Dr iver D.

Informatik Datenbanken SQL-Einführung

Konstante Relationen

Bedingungen über Werte Statische Integrität. CHECK-Klausel

MySQL 5.1. Kristian Köhntopp

Begleitskript. zum PHP/MySQL. Kurs

Inhaltsverzeichnis. jetzt lerne ich

(Von der Nähe zur Distanz zum User geordnet)

SQL: statische Integrität

Views in SQL. 2 Anlegen und Verwenden von Views 2

DBSP. Vorlesung. Prof. Dr. rer. nat. Nane Kratzke. Unit. Praktische Informatik und betriebliche Informationssysteme

Entwicklungsumgebung für die Laborübung

Unterabfragen (Subqueries)

Kapitel DB:VI (Fortsetzung)

Tag 7 Inhaltsverzeichnis

Stichwortverzeichnis. Iron Werther. Business Intelligence

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:

Kapitel 3: Datenbanksysteme

Datenbank - Teil 3. Ziele: Eine Datenbank anlegen mit SQL. Daten eingeben mit SQL. Abfragen stellen mit SQL und PHP.

IV. Datenbankmanagement

SQL. Was ist SQL? SQL- Standards Grundregeln Die DDL Datenbanken erstellen Tabellen erstellen und ändern Spalten definieren Schlüssel definieren - 2 -

6. Datenintegrität. Integritätsbedingungen

Details zu den Ausdrücken nach FROM, WHERE, GROUP BY und HAVING finden Sie in den Abschnitten über JOIN, WHERE und GROUP BY.

Relationentheorie grundlegende Elemente

Seite1 / Aufgabe 2: SQL. Lösungsvorschlag für die zusätzlichen Übungsaufgaben. Seite 2 / Aufgabe 1. Seite1 / Aufgabe 2: SQL. Warengruppe.

3. Datenbankzugriff (JDBC) Grundlagen der Programmierung II (Java)

PostgreSQL in großen Installationen

Object Relational Mapping Layer

Dipl. Inf. Eric Winter. PostgreSQLals HugeData Storage Ein Erfahrungsbericht

Vorlesung Informationssysteme

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP

Objektrelationale, erweiterbare Datenbanken WS 04/05

sm-client Projekt Aktualisierungsinstruktionen von R2.x auf R3.0 Finale Version SSK / BSV eahv/iv

Referenzielle Integrität SQL

VO Datenmodellierung. Katrin Seyr

Bibliografische Informationen digitalisiert durch

Vorlesung Datenbankmanagementsysteme

Referentielle Integrität

Hochschule Karlsruhe Technik und Wirtschaft Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt.

Thomas Ohlhauser: MySQL in Einzelschritten

Transkript:

MySQL: Einfaches Rechnen

Beispieldatenbank "Kunden" kunden (kunde_id, name, ñort_postleitzahl, kontostand_giro, kredit) orte (postleitzahl, name, einwohnerzahl, anzahl_telefonleitungen)

Beispieldatenbank "Kunden" kunden (kunde_id, name, ñort_postleitzahl, kontostand_giro, kredit) orte (postleitzahl, name, einwohnerzahl, anzahl_telefonleitungen)

(Code) für Copy-Paste DROP DATABASE IF EXISTS `kunden`; CREATE DATABASE IF NOT EXISTS `kunden` /*!40100 DEFAULT CHARACTER SET latin1 */; USE `kunden`; MySQL dump 10.13 Distrib 5.7.12, for osx10.9 (x86_64) Host: 127.0.0.1 Database: Kunden Server version 5.5.38 /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8 */; /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; /*!40103 SET TIME_ZONE='+00:00' */; /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; Table structure for table `kunden` DROP TABLE IF EXISTS `kunden`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `kunden` ( `kunde_id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(200) NOT NULL, `ort_postleitzahl` varchar(5) NOT NULL, `kontostand_giro` decimal(10,2) NOT NULL, `kredit` decimal(10,2) DEFAULT NULL, PRIMARY KEY (`kunde_id`), KEY `fk_kunde_ort` (`ort_postleitzahl`) ) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=latin1; /*!40101 SET character_set_client = @saved_cs_client */; Dumping data for table `kunden` LOCK TABLES `kunden` WRITE; /*!40000 ALTER TABLE `kunden` DISABLE KEYS */; INSERT INTO `kunden` VALUES (1,'John','79111',182.00,-430320.22),(2,'Herbert','79312',10291.32,-10000.00),(3,'Sabina','79312',-253.21,-3205.32),(4,'Mary','79111',-832.01,NULL),(5,'Heinrich','79111',15302.85,0.00),(6,'Usal','80995',23012.21,NULL),(7,'Johannes','80995',159.31,0.00),(8,'Carla','79312',503.06,-15302.68),(9,'Ludowika','79111',25201.07,-82213.99),(10,'Niemand','99999',-5021.30,-3024.21); /*!40000 ALTER TABLE `kunden` ENABLE KEYS */; UNLOCK TABLES; Table structure for table `orte` DROP TABLE IF EXISTS `orte`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `orte` ( `postleitzahl` varchar(5) NOT NULL, `name` varchar(255) NOT NULL, `einwohnerzahl` int(11) DEFAULT NULL, `anzahl_telefonleitungen` int(11) DEFAULT NULL, PRIMARY KEY (`postleitzahl`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*!40101 SET character_set_client = @saved_cs_client */; Dumping data for table `orte` LOCK TABLES `orte` WRITE; /*!40000 ALTER TABLE `orte` DISABLE KEYS */; INSERT INTO `orte` VALUES ('20095','Hamburg',2000000,1004),('79111','Freiburg',280000,195),('79312','Emmendingen',40000,12),('80995','München',1000000,385); /*!40000 ALTER TABLE `orte` ENABLE KEYS */; UNLOCK TABLES; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; /*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; Dump completed on 2016-11-02 20:20:40

Grundrechenarten Rechnen mit Werten einzelner Spalten orte.name, einwohnerzahl/anzahl_telefonleitungen AS einwohner_pro_telefonleitung orte ORDER BY einwohner_pro_telefonleitung

Grundrechenarten Rechnen mit Werten einzelner Spalten k.name AS n, o.name AS ortname, (kontostand_giro + kredit) AS bilanz kunden as k, orte as o WHERE k.ort_postleitzahl = o.postleitzahl ORDER BY bilanz

Grundrechenarten Rechnen mit Werten einzelner Spalten k.name AS n, (kontostand_giro + kredit) AS bilanz kunden as k WHERE bilanz > 1000 ORDER BY bilanz FALSCH! ACHTUNG: Ein berechnetes Alias (z.b. bilanz) kann NICHT in der WHERE-Klausel verwendet werde (das macht man mit HAVING, siehe später)

AggregaSunkTonen zum Rechnen Ähnlich wie in Excel: - SUM() à Summe - AVG() à Durchschnitt gute Erklärung im Web: http://www.teialehrbuch.de/kostenlose-kurse/sql/14750-aggregatfunktionen.html

AggregaSunkTonen zum Rechnen Bei diesen FunkTonen werden Ähnlich wie in Excel: viele Datensätze zu einem zusammengefasst! - SUM() à Summe - AVG() à Durchschnitt anzahl_telefonleitungen orte Ergebnis: 385 12 195 1004 SUM(anzahl_telefonleitungen) orte Ergebnis: 1596 gute Erklärung im Web: http://www.teialehrbuch.de/kostenlose-kurse/sql/14750-aggregatfunktionen.html

SUM() SUM(orte.anzahl_telefonleitungen) orte Werte der Spalte anzahl_telefonleitungen summieren:

AVG() AVG(kontostand_giro) orte, kunden WHERE orte.postleitzahl = kunden.ort_postleitzahl

AVG() oder mit Alias... AVG(kontostand_giro) AS 'Durchschnittlicher Kontostand' orte, kunden WHERE orte.postleitzahl = kunden.ort_postleitzahl

BETWEEN Nützlich bei Datumsangaben! * orte WHERE einwohnerzahl BETWEEN 50000 AND 1000000 * orte WHERE einwohnerzahl < 50000

ROUND() Syntax: ROUND (zahl, stellen) ROUND(AVG(kontostand_giro),2) orte, kunden WHERE orte.postleitzahl = kunden.ort_postleitzahl