Доброго времени суток!
Работаю со слабоструктурированными данными. Использую классическую модель EAV
. Но нет предела совершенству. Нашел время попробовать заменить EAV
на jsonb
в postgresql
. Заступорился на том, что не соображу, как реализовать поиск по вхождению в строку. А возможно ли? Если да, то как? Подойдет решение на Django
или чистом SQL
. Чтобы понятнее было, пример: есть модель
class SomeModel(models.Model):
data = JSONField()
В поле data
сохранен json
(2 строки в таблице базы данных):
{"name": "Michael", "friend_name": "Sara"}
{"name": "Miranda", "friend_name": "Richard"}
Поиск подразумевает, что при вводе "ar"
выдаст обе строки ("ar" in "Sara"
, "ar" in "Miranda"
), "cha"
- опять две строки( "cha" in "Michael"
, "ar" in "Richard"
), "ir"
- только одна ("ir" in "Miranda"
), "asdq"
- ни одной. Возможно ли такое реализовать средствавми Django
? Возможно ли реализовать средствами SQL
?
Updated 23 March 2018, 23:39 by alex_cube.