Q Sprache - Wartungsfunktionen
.Q.en
.Q.enist eine dyadische Funktion, die beim Aufteilen einer Tabelle hilft, indem eine Symbolspalte aufgelistet wird. Dies ist besonders nützlich, wenn es sich um historische Datenbanken handelt (gespreizt, Partitionstabellen usw.). - -
.Q.en[`:directory;table]
wo directory ist das Ausgangsverzeichnis der historischen Datenbank, in der sym file befindet sich und table ist die aufzuzählende Tabelle.
Eine manuelle Aufzählung von Tabellen ist nicht erforderlich, um sie als gespreizte Tabellen zu speichern, da dies durch -
.Q.en[`:directory_where_symbol_file_stored]table_name
.Q.dpft
Das .Q.dpftFunktion hilft beim Erstellen partitionierter und segmentierter Tabellen. Es ist eine fortgeschrittene Form von.Q.en, da es nicht nur die Tabelle aufteilt, sondern auch eine Partitionstabelle erstellt.
Es werden vier Argumente verwendet .Q.dpft - -
symbolisches Dateihandle der Datenbank, in der eine Partition erstellt werden soll,
q Datenwert, mit dem wir die Tabelle partitionieren werden,
Name des Feldes, mit dem das partierte Attribut (`p #) angewendet werden soll (normalerweise` sym), und
der Tabellenname.
Nehmen wir ein Beispiel, um zu sehen, wie es funktioniert -
q)tab:([]sym:5?`msft`hsbc`samsung`ibm;time:5?(09:30:30);price:5?30.25)
q).Q.dpft[`:c:/q/;2014.08.24;`sym;`tab]
`tab
q)delete tab from `
'type
q)delete tab from `/
'type
q)delete tab from .
'type
q)delete tab from `.
`.
q)tab
'tab
Wir haben die Tabelle gelöscht tabaus dem Gedächtnis. Laden wir es jetzt aus der Datenbank
q)\l c:/q/2014.08.24/
q)\a
,`tab
q)tab
sym time price
-------------------------------
hsbc 07:38:13 15.64201
hsbc 07:21:05 5.387037
msft 06:16:58 11.88076
msft 08:09:26 12.30159
samsung 04:57:56 15.60838
.Q.chk
.Q.chk ist eine monadische Funktion, deren einzelner Parameter das symbolische Dateihandle des Stammverzeichnisses ist. Wo immer erforderlich, werden leere Tabellen in einer Partition erstellt, indem die einzelnen Partitionsunterverzeichnisse im Stammverzeichnis untersucht werden.
.Q.chk `:directory
wo directory ist das Ausgangsverzeichnis der historischen Datenbank.