SQL

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>SQL</language>
Eine kleine DB vorbereiten:
<code id="4d2c868a98a69">
CREATE TABLE Place (Code INTEGER,Name VARCHAR(255));
CREATE INDEX iCode ON Place (Code);

CREATE TABLE Customer (Nr INTEGER,Name VARCHAR(255),Place INTEGER);
CREATE INDEX iNr ON Customer (Nr);
</code>

Führen wir ein paar Inserts durch:
<code id="4d2c868a98ad0">
INSERT INTO Place VALUES (4900,'Langenthal');
INSERT INTO Place VALUES (8000,'Zurich');
INSERT INTO Place VALUES (3000,'Berne');
INSERT INTO Place VALUES (1200,'Geneva');
INSERT INTO Place VALUES (6900,'Lugano');

INSERT INTO Customer VALUES (1,'Meier',3000);
INSERT INTO Customer VALUES (2,'Mueller',8000);
INSERT INTO Customer VALUES (3,'Devaux',1200);
INSERT INTO Customer VALUES (4,'Rossi',6900);
INSERT INTO Customer VALUES (5,'Rickli',3000);
INSERT INTO Customer VALUES (6,'Graf',3000);
INSERT INTO Customer VALUES (7,'Mueller',4900);
INSERT INTO Customer VALUES (8,'May',1200);
INSERT INTO Customer VALUES (9,'Berger',8000);
INSERT INTO Customer VALUES (10,'D''Ascoli',6900);
INSERT INTO Customer VALUES (11,'Padruz',1200);
INSERT INTO Customer VALUES (12,'Hug',4900);
</code>

Ein Query dazu:
<run id="4d2b639b9f2c5">
SELECT * FROM Customer;
SELECT * FROM Customer,place WHERE Customer.place=place.code AND place.name='Berne'
</run>

Natürlich kann man auch versteckten Code für das anlegen einer Datenbank mit Beispielinhalten usw. verwenden.

Quelltexte die in einer CODE Box hinterlegt sind, werden IMMER vor jedem RUN mit ausgeführt. Damit eignen Sie sich prima, um Tabellen und Datensätze anzulegen:
 
<code id="4d2c868a98b3d">
Create Table Artikel(
	A_Nr integer,
	A_Name varchar(50), 
	A_Preis decimal);

Insert Into Artikel Values (12, 'Oberhemd', 22.23);
Insert Into Artikel Values (22, 'Mantel', 360.00);
Insert Into Artikel Values (11, 'Oberhemd', 44.20);
Insert Into Artikel Values (13, 'Hose', 110.50);
</code>
<run id="4d2b639b9f333">
SELECT * FROM Artikel;

SELECT *
  FROM Artikel 
  WHERE A_Preis = (SELECT MAX(A.A_Preis) FROM Artikel As A)
</run>

Die unterstützten SQL Befehle können hier nachgeschlagen werden: [http://hsqldb.org/doc/guide/sqlgeneral-chapt.html SQL Befehlssatz].

Schreiben einen SQL Befehl, der den Artikel mit dem niedrigsten Preis ausgibt:
<code id="5703750619d50"></code>
<check>
.---------------------------.
| A_Nr |  A_Name  | A_Preis |
|------|----------|---------|
|   12 | Oberhemd |   22.23 |
'---------------------------'
1 Zeile(n) gefunden.
</check>