Home » Beitrag verschlagwortet mit 'Oracle'

Schlagwort-Archive: Oracle

Hibernate, JPA, JPQL, JDBC – Java DB Query Languages

Logging von Hibernate SQL

Allgemeines Logging:

org.hibernate.SQL=DEBUG

Um die Parameter-Einfügungen in die Query zu loggen:

org.hibernate.type.descriptor.sql.BasicBinder=DEBUG

PL/SQL Problem ‚PLS-00103: Encountered the symbol‘ bei DDL statements

Problem:

DDL-Statements können ’nackt‘ nicht im PL/SQL ausgeführt werden.

Lösung:

DDL-Statements in execute immediate ‚….‘ einpacken.

–> http://www.dba-oracle.com/t_using_ddl_create_index_table_plsql.htm

Oracle SQL Explain – Query Performace

Links:

SQL CROSS APPLY function

Reference

SQL Cross Apply and Outer Apply: The Complete Guide

Oracle SQL – Know how

Concatenate the different row values of the same group into on row per group.

LISTAGG Function, see: Sql PIVOT and string concatenation aggregate

SQL Pivot

Referenzen

Oracle PIVOT – Introduction to Oracle PIVOT clause

SQL Pivot: Converting Rows to Columns

Sql PIVOT and string concatenation aggregate (Schwierig :-))

Kurz-Erklärung

SQL Pivot kann benutzt werden um Gruppierungen innerhalb eines Resultat-Sets zu machen und pro Gruppe zusätzliche Kolonnen zu extrahieren.

Hätten wir z.B. ein statement:

SELECT MONAT, REGENMENGE FROM REPORT;

MonatRegenmenge
1100
2212
3322

Wenn man daraus dieseses Format erstellen möchte:

JanuarFebruarMärzApril
100212322

… würde man dies mit folgendem Pivot-Statement erreichen:

SELECT MONAT, REGENMENGE FROM REPORT
PIVOT max(REGENMENGE) -- Aggregatsfunktion fuer mehrere werte fuer denselben Monat
FOR MONAT
IN ( '1' as JANUAR, '2' as FEBRUAR, '3' as MÄRZ, '4' as APRIL, ...)