Deutsch   |   English
   
 digg.com  del.icio.us 

Nützliche SQLs

Allgemeines

Tabellen und Views im aktuellen Schema anzeigen

SELECT * FROM cat;

Alle Schemas und deren Besitzer abfragen

SELECT schema_name,schema_owner FROM exa_schemas; 

Aktuell geöffnetes Schema und angemeldeten Benutzer anzeigen

SELECT CURRENT_SCHEMA, CURRENT_USER FROM dual;

Definition eines Views im aktuellen Schema abfragen

SELECT view_name, view_text FROM exa_all_views 
WHERE
view_name='MY_VIEW_NAME' AND 
view_schema=CURRENT_SCHEMA
; 
 

Arbeiten mit Tabellen

Evtl. existierende Tabelle droppen und neue anlegen

CREATE OR REPLACE TABLE

Tabelle ausleeren

TRUNCATE TABLE mytab;

Bitte beachten Sie, dass TRUNCATE TABLE dem Transaktionsmanagementsystem von EXASolution unterliegt: Die Änderung wird erst beim Committed persistent.

Tabelle umbenennen

RENAME name1 TO name2;

Der RENAME-Befehl kann auf alle Datenbankobjekte ausser Benutzer und Rollen angewandt werden:

  • Schema
  • Table
  • View
  • Function
  • Skript

Rechteverwaltung (DCL)

Anlegen eines neuen Benutzers, Einrichtung eines Schema mit demselben Namen, in dem der Benutzer alles darf

CREATE USER newone IDENTIFIED BY newpass;
CREATE SCHEMA newone;
ALTER SCHEMA newone CHANGE OWNER newone;
GRANT CREATE TABLE, CREATE VIEW, CREATE FUNCTION, CREATE SCRIPT TO newone;
GRANT CREATE SESSION TO newone;
 

GRANT Befehle erzeugen

  1. SELECT 'GRANT select ON '||root_name||'.'||object_name||' TO newone;'
  2. FROM
  3.     exa_all_objects
  4. WHERE
  5.     root_name='EXAMPLES' AND
  6.     root_type='SCHEMA' AND
  7.     object_type IN ('TABLE','VIEW')
  8. ;
  9.  

Mit der oben dargestellten Query können Sie Grant-Befehle für alle Tabellen und Views in einem bestimmten Schema (hier EXAMPLES) erzeugen, mit denen das Select-Privileg dem Benutzer „newone“ gewährt werden kann.

GRANT SELECT ON EXAMPLES.CITIES TO newone;
GRANT SELECT ON EXAMPLES.COUNTRIES TO newone;
GRANT SELECT ON EXAMPLES.CUSTOMERS TO newone;
GRANT SELECT ON EXAMPLES.CUSTOMER_MOVES TO newone;
GRANT SELECT ON EXAMPLES.ITEMS TO newone;
GRANT SELECT ON EXAMPLES.NEW_CITIES TO newone;
GRANT SELECT ON EXAMPLES.NEW_CUSTOMERS TO newone;
GRANT SELECT ON EXAMPLES.ORDERS TO newone;
GRANT SELECT ON EXAMPLES.PAYMENTS TO newone;
GRANT SELECT ON EXAMPLES.PRODUCTS TO newone;
GRANT SELECT ON EXAMPLES.RETURNED_ITEMS TO newone;
GRANT SELECT ON EXAMPLES.V_CUSTOMERS TO newone;
GRANT SELECT ON EXAMPLES.V_CUSTOMER_RAITING TO newone;
GRANT SELECT ON EXAMPLES.V_ORDERS TO newone;
GRANT SELECT ON EXAMPLES.V_PAYMENTS TO newone;
GRANT SELECT ON EXAMPLES.V_PRODUCT_ORDERING TO newone;
GRANT SELECT ON EXAMPLES.V_PRODUCT_RATING_MONTHLY TO newone;
GRANT SELECT ON EXAMPLES.V_RETURNS TO newone;
GRANT SELECT ON EXAMPLES.V_TRANSACTIONS TO newone;

Arbeiten mit Datumangaben

Der DATE Datentyp speichert ein Datum mit den Informationen Tag, Monat und Jahr (vierstellig). Akzeptiert werden nur gültige Daten im Bereich 0000-01-01 bis 9999-12-31. Es ist nicht möglich, Teilfelder (Tag/Monat) auszulassen oder auf ungültige Werte (0, >12/31) zu setzen. Damit ist ein Datum entweder als ganzes gültig oder ein Nullwert. Werte wie '2009-01-00' oder '2009-02-30' sind nicht erlaubt und verursachen eine 'invalid date value' data-exception.

Der TIMESTAMP Datentyp entspricht vom Verhalten her dem DATE Datentyp, ist aber um eine Uhrzeit (Stunden, Minuten, Sekunden, Millisekunden) ergänzt. Der Gültigkeitsbereich entspricht daher [0000-01-01 00:00:00.000; 9999-12-31 23:59:59.999]. Ungültige Werte im Zeitbereich werden mit 'invalid time value' quittiert.

Char nach Date konvertieren und den nächsten Tag berechnen

SELECT TO_DATE('20070504','yyyymmdd')+1 FROM dual; 

Den ersten und den letzten Tag eines Monats (hier des aktuellen Monats) berechnen

SELECT 
  TRUNC(SYSDATE, 'MM') AS first_day,
  ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 1) - 1 AS last_day
FROM dual;
Sie kommen nicht weiter?
Von den Experten lernen:
Referenzen
  • AHOOLY
  • COOP
  • „Mit EXASolution sind wir für zukünftiges Datenwachstum bestens gerüstet. Dadurch, dass wir jetzt Geodaten verarbeiten, sprich die Dimension des Raumbezugs mit auswerten können, bieten wir unseren Kunden ganz neue Analysemöglichkeiten und noch umfassendere Marktübersichten. Wir sind sehr zufrieden mit der neuen Lösung, können flexibel auf zukünftige Anforderungen reagieren und trotzdem unsere Total Cost of Ownership reduzieren, da der so gewählte BI-Stack unsere Vision eines „Lean-BI“ in vollem Umfang unsterstützt.“

    Guido Niermann, IT-Leiter, Dataforce GmbH

    Dataforce
  • "Durch die Einbindung von EXASOL können wir unseren Kunden ein ganz neues Erlebnis bezüglich der explorativen Datenanalyse bieten… Neben der Technologie waren wir vor allem mit der Pre-Sales Beratung und dem Support während der Integration äußerst zufrieden."

     Martin Heink
    Geschäftsführer und Inhaber, econda GmbH 

    Econda
  • "Entscheidend für die IMS Health war insbesondere, dass wir uns durch einen sehr schnell aufgesetzten Proof of Concept von der Leistungsfähigkeit von EXASolution direkt überzeugen konnten."

     Michael Kempke
    Director Data Collection Global Operations, IMS Health GmbH & Co. OHG

    IMS
  • "Mit der innovativen Datenbank von EXASOL können wir komplexe Berechnungen genauer und umfangreicher durchführen. Das gibt uns einen signifikanten Technologievorsprung gegenüber der Konkurrenz."

     Tobias Kiessling
    CTO, intelliAd 

    Intelliad
  • "Die durchgängig hohe Leistung und die Möglichkeit, Echtzeitanalysen fahren zu können, waren für uns ausschlaggebend bei der Wahl von EXASolution."

     Tobias Kroha, Geschäftsführer der für das m-pathy-Projekt verantwortlichen seto GmbH

    m-pathy
  • Media Control
  • Olympus
  • "Wir haben uns für EXASolution entschieden, da die Hochleistungsdatenbank mit den zu erwartenden großen Datenmengen sehr gut umgehen kann und optimale Flexibilität bietet."

     Dr. Michael Röbbecke
    (ehem.) Geschäftsführer, RatePAY 

    RatePAY
  • "Mit EXASolution können wir unsere Geschäftsprozesse deutlich optimieren." 

     Gerhard Zapf
    Projektleiter, Semikron 

    Semikron
  • "Ein zuverlässiger und schneller Support, eine bessere Kundenbetreuung sowie eine bewiesene Fachkompetenz…"

     David Hodge
    IT Director, Sony Music Entertainment Germany 

    Sony Music
  • SOQUERO
  • SponsorPay
  • Stayfriends
  • "Die Datenbank von EXASOL ist Technik made in Germany, auf die wir uns langfristig verlassen können. Da sie bei steigendem Datenvolumen selbstständig skaliert und auch physisch beliebig erweitert werden kann, wächst unsere Datenbank mit unserem Unternehmen, und wir können auch in Zukunft flexibel und schnell auf neue Anforderungen reagieren."

     Heinrich Zetlmayer
    Geschäftsführer, Turtle Entertainment 

    Turtle Entertainment
  • United Internet Dialog
  • "Mit EXASolution haben wir eine Lösung erworben, die unsere hohen Leistungsansprüche komplexer Analysen bei steigenden Datenmengen für unsere Kunden optimal erfüllt." 

     Christian Sauer
    Geschäftsführer, Webtrekk GmbH 

    Webtrekk
  • "Wir haben uns nach einem ausgiebigen Benchmark-Test für die Lösung von EXASOL entschieden. Die hohe Performance des Systems, das Preis-/Leistungs-Verhältnis und der Service haben uns vollauf überzeugt"

    Dr. Ulrich Fricke
    Leiter Business Intelligence, XING AG 

    Xing
  • "Neben Wirtschaftlichkeit, Geschwindigkeit und hoher Leistungsfähigkeit war Flexibilität eines der entscheidenden Kriterien bei der Wahl unserer Datenbank… Die neue Datenbank bietet uns diese Skalierbarkeit bei reduzierten Total Cost of Ownership. So können wir auch in Zukunft immer die optimale Analyseleistung für unsere Kunden erbringen…"

     Sebastian Hoop
    Head of Operations, xplosion interactive gmbh 

    Xplosion
  • Zalando