Я подумываю разработать приложение для запроса наших серверов Influxdb, я просмотрел документ библиотеки Influxdb (https://hackage.haskell.org/package/influxdb-1.2.2/docs/Database-InfluxDB.html), но насколько я понимаю, вам нужно предварительно определить некоторую структуру данных, иначе вы ничего не сможете запросить. Мне просто нужно позволить пользователю запрашивать что угодно без предварительного определения некоторых данных в источниках.
Я полагаю, что я мог бы определить что-то с полем времени и полем значения, а затем использовать что-то вроде «SELECT active as value FROM mem», чтобы заставить его соответствовать этому. Я думаю, что это сработает, но было бы не очень практично, если бы мне понадобилось запрашивать два поля позже. Лучших решений я не вижу? Я все еще новичок в Haskell, буду признателен за любые советы.
РЕДАКТИРОВАТЬ:
Даже это не сработает, поскольку в этом бите явно отсутствует конструктор String:
:{
data Test = Test { time :: UTCTime, value :: T.Text }
instance QueryResults Test where
parseResults prec = parseResultsWith $ \_ _ columns fields -> do
time <- getField "time" columns fields >>= parseUTCTime prec
String value <- getField "value" columns fields
return Test {..}
:}
Я скопировал это из документа и просто изменил поля, не зная, где должна быть объявлена строка.