Довольно новый для реляционной базы данных и для sqlite. Но мне любопытно, как лучше всего представить список реалов на элемент / строку в SQLite.
У меня есть несколько предметов X; содержит 100-100000 единиц. Каждый элемент x в X имеет один основной атрибут, который представляет собой список пар с плавающей запятой (например, {{100,1.2}, {101.1, 234.3}, ..., {20000, 90}}; обычно содержит пару от 10 с до 1000 с поплавки).
Моя первая идея - использовать blob. Но это затрудняет чтение этих пар с плавающей точкой (с использованием некоторого общего средства просмотра sqlite, о котором я пока не знаю). Я также хотел бы сделать запрос по значениям этих пар с плавающей точкой. Есть ли способ проанализировать капли и использовать их во время запроса? Я также подозреваю, что будут проблемы с двоичным кодированием с большим порядком байтов и порядком байтов.
x = [prim_key, blob]
Вторая идея - представить их в виде строки. Это облегчает чтение, но, вероятно, менее компактно.
x = [prim_key, "100, 1.2, 101.1, 234.3, ..."]
Третий - «нормализовать» и представить эти числа с плавающей запятой в отдельной таблице со ссылкой на первичный ключ. Это кажется неудобным, медленнее собирать эти числа с плавающей запятой для определенного x, и пространство расточительно, поскольку каждая пара чисел с плавающей точкой должна быть связана со ссылками на значения первичного ключа. Но это позволит мне делать запросы, используя пары с плавающей точкой.
x_float_pairs = [prim_key_ref, 100, 1,2; prim_key_ref, 101,1, 234,3; ...]
Четвертое - создать таблицу, содержащую пару чисел на элемент x; наверное, самая плохая идея, верно?
Есть предложения? Заранее спасибо.