Извлечение данных из таблицы в kdb

#kdb

#kdb

Вопрос:

Вопрос Kdb: это несколько строк в таблице, и я хочу проверить, соответствуют ли все строки, если столбец соответствует условию. Итак, столбец StartDay = *** Как я могу проверить каждую отдельную строку для этого столбца?

 Select from t where StartDay = '$"***" 
 

Просто выдает мне ошибки типа.

Буду признателен за любую помощь!

Комментарии:

1. Пожалуйста, будьте осторожны с грамматикой и знаками препинания. Вас очень трудно читать без них!

Ответ №1:

Предполагая, что столбец StartDay имеет тип даты, как в следующем примере

 q)show t:([]StartDay:.z.d til 3;number:til 3;sym:`abc`def`ghi)
StartDay   number sym
---------------------
2021.02.19 0      abc
2021.02.20 1      def
2021.02.21 2      ghi
 

Тогда следующий запрос будет работать

 q)select from t where StartDay=2021.02.19
StartDay   number sym
---------------------
2021.02.19 0      abc
 

Приведенный вами пример выглядит так, как будто вы пытаетесь запросить столбец символьного типа. Вот два примера этого

 q)select from t where sym=`$"ghi"
StartDay   number sym
---------------------
2021.02.21 2      ghi

q)select from t where sym=`ghi
StartDay   number sym
---------------------
2021.02.21 2      ghi
 

Возможно, следующее руководство о том, где в q-sql поможет.

Комментарии:

1. Спасибо, Томас, в конце концов, все заработало. Я запрашивал список строк, в итоге привел столбцы, и я смог выполнить запрос с помощью; q) выберите из t, где не startDay =’$»***»