Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

SQL in Visual FoxPro. © 1999 TMN-Systemberatung GmbH SQL Historie n SQL - Structured Query Language n In den 70er Jahren von IBM entwickelt n 1986 zum.

Ähnliche Präsentationen


Präsentation zum Thema: "SQL in Visual FoxPro. © 1999 TMN-Systemberatung GmbH SQL Historie n SQL - Structured Query Language n In den 70er Jahren von IBM entwickelt n 1986 zum."—  Präsentation transkript:

1 SQL in Visual FoxPro

2 © 1999 TMN-Systemberatung GmbH SQL Historie n SQL - Structured Query Language n In den 70er Jahren von IBM entwickelt n 1986 zum ANSI Standard erhoben n 1987 Übernahme des Standard von ISO n 1989 erweitert wobei der 86er Standard als SQL89/Level1 übernommen wurde n Letzte Erweiterung von 1992 wird SQL2 oder SQL92 genannt. n Heute die Abfragesprache für alle relationalen Datenbanksysteme

3 © 1999 TMN-Systemberatung GmbH SQL - SELECT (1) n SELECT Select_Item FROM Table n Sortierung ORDER BY Feldname ASC (Default) | DESC n Selektion WHERE Klausel SELECT * ; FROM CUSTOMER SELECT NAME,VORNAME ; FROM CUSTOMER SELECT * ; FROM CUSTOMER ; ORDER BY NAME ASC, ; VORNAME DESC SELECT * ; FROM CUSTOMER ; WHERE NAME = Alt ; ORDER BY VORNAME

4 © 1999 TMN-Systemberatung GmbH SQL - SELECT (2) n BETWEEN ; Wert1 AND Wert2 (Grenzwerte sind inklusive) n IN (Wert1,Wert2,Wert3) Wertegruppe prüfen n LIKE Zeichenkettenvergleich mit Wildcards: – _ ein bel. Zeichen – % beliebige Anzahl bel. Zeichen SELECT * ; FROM CUSTOMER ; WHERE PLZ BETWEEN ; 74000 AND 74999 SELECT * ; FROM CUSTOMER ; WHERE PLZ IN (74072, 74076) SELECT * ; FROM CUSTOMER ; WHERE NAME LIKE A% (Alle Kunden deren Name mit A beginnt)

5 © 1999 TMN-Systemberatung GmbH SQL - SELECT (3) n GROUP BY ( Gruppierung) mit GROUP BY können Sie Sätze des Ergebnis Cursors zu einem Satz zusammenfassen n AS Klausel Der entstehenden Spalte einen definieren Namen zuordnen n COUNT(*) Anzahl der Datensätze zählen. SELECT COUNTRY, ; COUNT(*) AS ANZAHL ; FROM CUSTOMER ; GROUP BY COUNTRY

6 © 1999 TMN-Systemberatung GmbH SQL - SELECT (4) n HAVING - Einschränken des Ergebnis Cursors n FUNKTIONEN: – MIN, MAX – SUM, AVG, COUNT – Sinnvoller Einsatz nur bei Gruppierung SELECT Region, ; COUNT (*) AS ANZAHL ; FROM CUSTOMER ; GROUP BY REGION ; HAVING ANZAHL > 1 (Alle Regionen, welche mehr als einen Datensatz enthalten)

7 © 1999 TMN-Systemberatung GmbH SQL - SELECT (5) n DISTINCT Nur unterschiedliche Werte werden beachtet. n UNTERABFRAGEN SELECT COUNT DISTINCT PLZ; AS ANZAHL ; FROM CUSTOMER (Anzahl der unterschiedlichen Postleitzahlen in der Tabelle ausgeben) SELECT NAME FROM CUSTORMER ; WHERE UMSATZ >= ; ( SELECT AVG(UMSATZ) ; FROM STATISTIK ) (Alle Kunden, welche den Max Umsatz erreicht haben heraussuchen)

8 © 1999 TMN-Systemberatung GmbH SQL - SELECT (6) n UNTERABFRAGEN mit WHERE : – ALL – ANY – EXISTS – IN – sowie mit NOT kombiniert (Rushmoore greift nicht ! ) WHERE UMSATZ > ALL (SELECT...) WHERE UMSATZ < ANY (SELECT...) WHERE EXISTS (SELECT...) (Vergleich Unterabfrage leer.T. /.F.) WHERE KDNR IN (SELECT KDNR FROM...)

9 © 1999 TMN-Systemberatung GmbH SQL - SELECT (7) n SELECT über mehrere Tabellen n lokaler Alias SELECT Customer.NAME, ; Orders.Summe ; FROM Customer, Orders ; WHERE Customer.id = ; Orders.CustormerId ODER verkürzt: SELECT C1.NAME, O1.Summe ; FROM Customer C1, Orders O1; WHERE C1.id = O1.CustormerId

10 © 1999 TMN-Systemberatung GmbH SQL - SELECT (8) n LEFT – Alle Daten der linken Tabelle, und die übereinstimmenden der rechten Tabelle n RIGHT – Alle Daten der rechten Tabelle, und die übereinstimmenden der linken Tabelle n INNER – nur die übereinstimmenden Daten der linken und rechten Tabelle n FULL – Alle Daten der rechten Tabelle, sowie alle Daten der linken Tabelle, wobei übereinstimmende Sätze zugeordnet werden. JOINS

11 © 1999 TMN-Systemberatung GmbH SQL - SELECT (8) n AUSGABE des Ergebnisses in: – INTO CURSOR [NOFILTER] – INTO DBF | TABLE – INTO ARRAY – TO FILE [ADDITIVE] – TO PRINTER – TO SCREEN

12 © 1999 TMN-Systemberatung GmbH VFP Neuerungen (1) n SELECT TOP Selektion der ersten xx Sätze wobei die Order By Klausel entscheidend ist n SELECT TOP PERCENT Selektion der ersten xx Prozent der Sätze wobei die Order BY Klausel entscheidend ist. n Achtung: Sätze welche in der Sortierfolge überein- stimmen werden nur einmal gezählt -> event. mehr Sätze im Ergebnis als erwartet. SELECT TOP 10 NAME ; FROM CUSTOMER ; ORDER BY UMSATZ SELECT TOP 10 PERCENT NAME ; FROM CUSTOMER ; ORDER BY UMSATZ

13 © 1999 TMN-Systemberatung GmbH VFP Neuerungen (2) n FORCE – Mit FORCE können Sie erzwingen, daß die WHERE Bedingung von Links nach Rechts abgearbeitet wird. (Dies macht vor allem für die Optimierung größerer Abfragen Sinn.) n NOFILTER – Mit NOFILTER können Sie erzwingen, daß ein temporäre Tabelle erstellt wird ! – Nur NOFILTER Cursor können Sie mit SELECT weiterverarbeiten

14 © 1999 TMN-Systemberatung GmbH SQL - SELECT im Überblick SELECT [ALL | DISTINCT] [TOP nExpr [PERCENT]] [Alias.] Select_Item [AS Column_Name] [, [Alias.] Select_Item [AS Column_Name]...] FROM [FORCE] [DatabaseName!]Table [[AS] Local_Alias] [[INNER | LEFT [OUTER] | RIGHT [OUTER] | FULL [OUTER] JOIN DatabaseName!]Table [[AS] Local_Alias] [ON JoinCondition …] [[INTO Destination] | [TO FILE FileName [ADDITIVE] | TO PRINTER [PROMPT] | TO SCREEN]] [PREFERENCE PreferenceName] [NOCONSOLE] [PLAIN] [NOWAIT] [WHERE JoinCondition [AND JoinCondition...] [AND | OR FilterCondition [AND | OR FilterCondition...]]] [GROUP BY GroupColumn [, GroupColumn...]] [HAVING FilterCondition] [UNION [ALL] SELECTCommand] [ORDER BY Order_Item [ASC | DESC] [, Order_Item [ASC | DESC]...]]

15 © 1999 TMN-Systemberatung GmbH Weitere SQL Befehle n INSERT INTO dbf_name [(fname1 [, fname2,...])] VALUES (eExpression1 [, eExpression2,...]) oder: n INSERT INTO dbf_name FROM ARRAY ArrayName | FROM MEMVAR n UPDATE [DatabaseName!]TableName SET Column_Name = eExpression [WHERE FilterCondition] n DELETE FROM [DatabaseName!]TableName [WHERE FilterCondition]

16 © 1999 TMN-Systemberatung GmbH SQL zu Wartungszwecken n CREATE DATABASE n CREATE TABLE n ALTER TABLE n CREATE CURSOR temporäre Tabelle erstellen, diese kann wie jede andere VFP Tabelle verwendet werden. (Also nicht schreibgeschützt !) n CREATE SQL VIEW

17 © 1999 TMN-Systemberatung GmbH Anregungen und Fragen TMN-Systemberatung GmbH Allee 62 74072 Heilbronn http://www.tmn-systemberatung.de info@tmn-systemberatung.de


Herunterladen ppt "SQL in Visual FoxPro. © 1999 TMN-Systemberatung GmbH SQL Historie n SQL - Structured Query Language n In den 70er Jahren von IBM entwickelt n 1986 zum."

Ähnliche Präsentationen


Google-Anzeigen