[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как правильно хранить sql-запросы?
acerrusm
Привет!

Есть 3 таблицы:
user posted image

Таблица FavoriteSearches хранит избранные поисковые запросы в колонке searchQuery.

Вопрос: правильно ли хранить sql-запрос в таблице FavoriteSearches?
Guest
Не надо кодить первого января!
acerrusm
Цитата (Guest @ 1.01.2016 - 16:39)
Не надо кодить первого января!

Ну я чуть-чуть, что бы проснуться smile.gif
Ron
Я считаю это правильнее делать через кэш.
acerrusm
Цитата (Ron @ 1.01.2016 - 17:51)
Я считаю это правильнее делать через кэш.

А можно по-подробнее или ссылочку на источник? biggrin.gif
Valick
Цитата (acerrusm @ 1.01.2016 - 17:52)
Вопрос: правильно ли хранить sql-запрос в таблице FavoriteSearches?

какого результата вы этим хотите добиться?

_____________
Стимулятор ~yoomoney - 41001303250491
acerrusm
Цитата (Valick @ 1.01.2016 - 21:20)
Цитата (acerrusm @ 1.01.2016 - 17:52)
Вопрос: правильно ли хранить sql-запрос в таблице FavoriteSearches?

какого результата вы этим хотите добиться?

Например когда пользователь искал определенный фрукт выбирая некоторые параметры (фрукт: яблоко, цвет: красный), он, пользователь, может пометить этот поисковый запрос как Избранный. Таким образом, в след. раз пользователю не нужно будет выбирать определенные параметры.
Ron
Цитата (acerrusm @ 2.01.2016 - 00:42)
он, пользователь, может пометить этот поисковый запрос как Избранный.

Ок, тогда нужно хранить не запрос целиком, а всего лишь его параметры. Причем сериализованным массивом. Ну я бы так сделал.
acerrusm
Цитата (Ron @ 1.01.2016 - 22:05)
Цитата (acerrusm @ 2.01.2016 - 00:42)
он, пользователь, может пометить этот поисковый запрос как Избранный.

Ок, тогда нужно хранить не запрос целиком, а всего лишь его параметры. Причем сериализованным массивом. Ну я бы так сделал.

Ага, я тоже про такой метод думал. Т.е. например если пользователю пофиг какой цвет, главное что бы было яблоко, то сохранять параметры: name == "Apple", color == null в массив, а потом этот массив сериализовать? Уточняю для себя на всякий случай smile.gif
chee
acerrusm, сереализуй POST запрос, ну или конкретную форму, а потом уже из этих данных строй SQL запрос. У нас так работает, не жалуемся.


_____________
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации
Valick
Сериализовать не обязательно, потому как если вы соберётесь организовать мало мальски вменяемую статистику, вся сериализация выйдет боком.
В остальном Ron прав, не надо хранить запрос целиком.


_____________
Стимулятор ~yoomoney - 41001303250491
sergeiss
Цитата (Valick @ 2.01.2016 - 11:17)
Сериализовать не обязательно, потому как если вы соберётесь организовать мало мальски вменяемую статистику...

Можно хранить в формате JSON, в той БД, что работает с типом данных JSON. Например, в Постгре (это не реклама smile.gif). Тогда можно будет и хранить удобно, и искать по параметрам.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Valick
Цитата (sergeiss @ 2.01.2016 - 10:49)
в той БД, что работает с типом данных JSON

На сколько эффективна эта работа по отношению к нормализованным данным?
Группировка там тоже работает?

_____________
Стимулятор ~yoomoney - 41001303250491
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.