Ngôn ngữ Q - Chức năng bảo trì

.Q.en

.Q.enlà một hàm dyadic giúp hiển thị bảng bằng cách liệt kê một cột ký hiệu. Nó đặc biệt hữu ích khi chúng ta đang xử lý db lịch sử (bảng phân vùng, hiển thị, v.v.). -

.Q.en[`:directory;table]

Ở đâu directory là thư mục chính của cơ sở dữ liệu lịch sử, nơi sym file được đặt và table là bảng được liệt kê.

Việc liệt kê các bảng theo cách thủ công không cần thiết để lưu chúng dưới dạng bảng xếp chồng, vì điều này sẽ được thực hiện bởi -

.Q.en[`:directory_where_symbol_file_stored]table_name

.Q.dpft

Các .Q.dpftchức năng giúp tạo bảng được phân vùng và phân đoạn. Nó là dạng nâng cao của.Q.en, vì nó không chỉ hiển thị bảng mà còn tạo bảng phân vùng.

Có bốn đối số được sử dụng trong .Q.dpft -

  • xử lý tệp tượng trưng của cơ sở dữ liệu nơi chúng tôi muốn tạo phân vùng,

  • q giá trị dữ liệu mà chúng ta sẽ phân vùng bảng,

  • tên của trường mà thuộc tính parted (`p #) sẽ được áp dụng (thường là` sym), và

  • tên bảng.

Hãy lấy một ví dụ để xem nó hoạt động như thế nào -

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

Chúng tôi đã xóa bảng tabtừ bộ nhớ. Bây giờ chúng ta hãy tải nó từ db

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 là một hàm đơn nguyên có tham số duy nhất là xử lý tệp tượng trưng của thư mục gốc. Nó tạo các bảng trống trong một phân vùng, bất cứ khi nào cần thiết, bằng cách kiểm tra từng thư mục con của phân vùng trong thư mục gốc.

.Q.chk `:directory

Ở đâu directory là thư mục chính của cơ sở dữ liệu lịch sử.