2014-09-02 50 views

回答

4

https://code.kx.com/q/ref/dotq/#qpf-partition-type或其中一個.Q應該爲你做(https://code.kx.com/q/ref/card/#q)。雖然KX不一定建議使用.Q實用程序。

另一種方法是檢查是否存在變量「date」(如果是日期分區),其中列出了可用的分區日期。假設過程中沒有創建隨機無關的全局「日期」變量。

+0

1).Q.pf使輸出'.Q.pf。我也嘗試過其他Q工具。 2)我們可以檢查日期變量,但它不是通用的,因爲分區類型可能與日期不同。 – Rahul 2014-09-03 06:10:38

+0

1)如果是這樣的話,你在非分區數據庫上運行它。因此,更簡單的答案是檢查'p'是否在'Q'命名空間中。我認爲你的意思是'。Q.pf而不是'。Q.pf – 2014-09-03 06:22:24

+0

@ user2393012:所以你的意思是,如果pf只是一個分區目錄,它將只在Q命名空間中。如果是這種情況,那麼它可能會有所幫助。是的,它是'。Q.pf(在我以前的評論中錯字)。 – Rahul 2014-09-03 07:31:15

0

您可以檢查是否存在於數據庫根(通常是當前工作目錄)par.txt - 這可能是依靠一些內部.Q命名空間,這是受變化(儘管Kx的很少做重大更改的話)內一個更好的選擇。

所以對於一個分區HDB,你會得到如下:

q) `par.txt in key`:. 
     1b 
+2

par.txt不是分區數據庫的強制要求。它用於分段數據庫。所以不能用它來檢查分區的HDB。 – Rahul 2014-09-04 13:55:07