Есть база данных. Данных в базе очень много. В базе есть столбец цена. Мне нужно получить только те строки, где цена, к примеру, будет от 100 до 200. Как лучше сделать: получить все данные и отфильтровать их с помощью js или сразу делать нужный sql запрос к бд с нужным параметром диапазона цены? Что быстрее будет работать и меньше будет напрягать хостинг?
Представляю картину: ходит человек с мобилкой в роуминге, открывает сайтик, а ему вываливается сотня гигов данных, дабы потом жабаскрипт поискал там и нашел нужную сотню байт....
Конечно же SQL'ом это лучше делать. При паре десятков записей может и не будет заметна разница в производительности, но если в базе будет тысяча записей, тогда считывать их все и передавать на клиент будет очень затратно
Проще всего на стороне БД отфильтровать, особенно если выставить индекс на поле, по которому происходит фильтрация. Индексы помогают не считывать с диска всю таблицу, а только нужные строки, попадаемые под критерий, а операция считывания с диска одна из самых тяжёлых со стороны сервера.