#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 =’$»***»