tuple с разными типами.
Например такой: Tuple(typeCode String , "text" String , "code" String , "pregnancyTerm" Int32 , "pregnancyTermUnit" String)
CH 22.8.5.29 в WSL2 под Docker (data volume лежат в linux части FS).
При разборе
select
JSONExtract('{"typeCode":"a", "text":"B", "code":"C", "pregnancyTerm":2, "pregnancyTermUnit":"mg"}','Tuple(typeCode String , "text" String , "code" String , "pregnancyTerm" Int32 , "pregnancyTermUnit" String )')
; -- not works! SQL Error: java.lang.IllegalArgumentException: Unknown data type: typeCode String
select
tupleElement(JSONExtract('{"typeCode":"a", "text":"B", "code":"C", "pregnancyTerm":2, "pregnancyTermUnit":"mg"}','Tuple(typeCode String , "text" String , "code" String , "pregnancyTerm" Int32 , "pregnancyTermUnit" String )'),'typeCode')
; -- works!
Вопросы:
1. Получается, что JSONExtract в именованный tuple работает, но как к нему корректно обращаться? У меня это не финальная конструкция - в итоге будет Массив именованных туплей Array(Tuple(typeCode String , "text" String , "code" String , "pregnancyTerm" Int32 , "pregnancyTermUnit" String) ,но при его формировании падает с той же ошибкой
2. Оптимально ли применение такой конструкции Array(Tuple()) для моего характера разнотипных данных?
WITH JSONExtract('[{"typeCode":"a", "text":"B", "code":"C", "pregnancyTerm":2, "pregnancyTermUnit":"mg"}]', 'Array(Tuple(typeCode String , "text" String , "code" String , "pregnancyTerm" Int32 , "pregnancyTermUnit" String))') AS x SELECT tupleElement(x, 'text') AS res Query id: 33d70fbb-95bd-43eb-a9ec-2f592286ff2d ┌─res───┐ │ ['B'] │ └───────┘ Ну через tupleElement и обращаться > 2. Оптимально ли применение такой конструкции Array(Tuple()) для моего характера разнотипных данных? А что вы делать с ними будете то
Да, такая конструкция работает, но можно ли сохранить в таблице такой именованный разнотипный Tuple? 2. Хранить и анализировать. В моем случае это например массив диагнозов пациента, они все имеют смысл для анализа. Лианеризовать не получается.
> Лианеризовать не получается. ?? https://kb.altinity.com/altinity-kb-schema-design/best-schema-for-storing-many-metrics-registered-from-the-single-source/#2f-combined-approach
Как жаль, что не прочитал этого ранее, но лучше поздно, чем после релиза =). Спасибо.
Обсуждают сегодня