Short answer: .Q.view partition_list
By default, all partitions of a given historical kdb database are available. The .Q.view function enables a given kdb process instance to selectively expose an arbitrary set of partitions into view.
The following example restricts all operations of the database instance to the most recent partition date (typically the previous business day):
q)yesterday: last date q).Q.view yesterday q)count date 1 q)yesterday ~ value exec from select distinct date from trade 1b q)
Here is a more realistic example of a date partitioned historical database where viewable partitions are limited to those year-to-date:
q)start_date: "D" $ string[`year $ .z.D], ".01.01" q)end_date: last date q).Q.view date where date within (start_date; end_date) q)count select from trade where not date within (start_date; end_date) 0q)
See also: .Q.pn