-
Geht das in RPG ? Sorry, wusste ich nicht - ich probiere es aus, danke.
-
Bei den berechneten Indizes steht man vor dem Problem, dass der Optimizer diese nur verwendet, wenn man genau die selben Informationen, also hier den Concat und die Whereklausel, in einem SQL verwendet.
Weicht man auch nur in kleinster Weise davon ab, wird der Index nicht verwendet und SQL sucht sich was anderes.
Also dies könnte dann klappen:
SELECT * FROM TEST/TESTKOPF
WHERE
DIGITS (SUBSTR(TEXT, 21, 4)) CONCAT
DIGITS (SUBSTR(TEXT, 18, 2)) CONCAT
DIGITS (SUBSTR(TEXT, 15, 2)) = 'XXXX'
AND POSSTR(TEXT, 'DISPONIERT') > 0
and SATZ_KZ = 'STATI'
and LIEFNR < 990000000
-
 Zitat von a.wojcik
Geht das in RPG ? Sorry, wusste ich nicht
Das wissen die wenigsten.
Tatsache ist, dass die Erweiterungen in der Index-Definition (Spalten-Auswahl, zusätzliche Spalten udn WHERE-Bedingungen) in Release 6.1 in erster Linie für native I/O eingeführt wurden.
Erst mit Beginn von Release 7.1 werden in den Optimizer mehr und mehr Erweiterungen eingebaut, so dass auch SQL diese Indices optimal nutzen kann.
Birgitta
-
Hallo *All,
den Index habe ich erneut erstellt und mit dem SELECT von Fuerhau ausprobiert - ist suoer schnell.
Später probiere ich den Index im Programm aus.
Danke für Eure Unterstützung !
Schönes Wochenende
AW
-
Seit wann macht SQL etwas "in erster Linie für native I/O" ?
Meine Erfahrung ist, SQL macht was für SQL.
Wenn man nur native I/O programmiert kommt man doch gar nicht auf die Idee, dass SQL was dafür bereit hält.
Also ich denke, dass ist eher schlechtes Marketing.
Dieses Concat-Gedöns (vor allem bei Datumsfeldern) dient ja nur der optimalen Nutzung von Between-Vergleichen, da dies mit Einzelfeldern nicht funktioniert.
In anderen DB's gibt es z.T. schon länger "calculated Indices" die von der SQL-Engine auch gut genutzt werden konnten, eben nach obigen Kriterien.
-
SQL macht nichts für SQL!
Aber IBM macht was für RPG und SQL.
Warum sollte IBM sonst z.B. Satz-Format-Namen, die nicht Standard sind beim CREATE TABLE, CREATE INDEX, CREATE VIEW zulassen?
Die Optimierung der neuen Indices war und ist nicht ganz trivial, deshalb wurden die neuen Indices zunächst nur mit native I/O verwendet. Ansonsten hätte man diese Indices solange zurückhalten müssen, bis die Optimierung abgeschlossen gewesen wäre.
Ich kann mich an diverse Ankündigungen, Artikel, Präsentationen etc. zu Beginn von 6.1 erinnern, in denen erklärt wird, dass DDS stabilisiert sei und man anstelle von DDS beschriebenen logischen Dateien (derived and sparsed) Indices verwenden solle.
Birgitta
Similar Threads
-
By tarkusch in forum NEWSboard Programmierung
Antworten: 11
Letzter Beitrag: 27-01-22, 12:41
-
By AS400.lehrling in forum Intern - Hilfe - Feedback - Tests-Forum
Antworten: 4
Letzter Beitrag: 20-10-15, 20:24
-
By H.V in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 20-09-02, 16:00
-
By hs in forum IBM i Hauptforum
Antworten: 9
Letzter Beitrag: 14-02-02, 06:30
-
By Stefan_R in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 23-01-02, 16:08
Tags for this Thread
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks