powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Выборка товаров по сумме цен
6 сообщений из 6, страница 1 из 1
Выборка товаров по сумме цен
    #39157104
Ярый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Товарищи, в sql разбираюсь поверхностно, можете подсказать, есть ли возможность выбрать из БД столько элементов, чтобы сумма по их полю цена не превысила заданное значение? Сама задача не стоит как для метода оптимизации - найти максимально близкую сумму к заданной, просто выбирать рандомные значения, пока не превысит заданную сумму
Вот сам запрос без ограничения на количество товаров:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SELECT el.ID, el.NAME, el.DETAIL_PICTURE, price.PRICE, prod.QUANTITY 
            FROM b_catalog_product AS prod, b_catalog_price AS price, b_iblock_element AS el
            WHERE el.IBLOCK_ID = "6" AND
            el.ACTIVE = "Y" AND
            prod.QUANTITY > "1" AND
            price.PRICE >= '. $_POST['MINPRICE'] .' AND price.PRICE <= ' . $_POST['MAXPRICE'] . ' AND
            el.ID = prod.ID AND
            el.ID = price.ID AND
            prod.ID = price.ID 
            ORDER BY RAND() 
...
Рейтинг: 0 / 0
Выборка товаров по сумме цен
    #39157114
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ярыйесть ли возможностьесть
курить фак по переменным
идея - отсортировать по возрастанию цены, посчитать нарастающий итог, оставить только те записи, где он окажется меньше заданного числа
...
Рейтинг: 0 / 0
Выборка товаров по сумме цен
    #39157127
Ярый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tanglir,

не пойдет, потому что получим список из дешевых товаров, нужно чтобы товары были из разных ценовых категорий
...
Рейтинг: 0 / 0
Выборка товаров по сумме цен
    #39157155
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все то что сказал tanglir , применительно к простой таблице seq1000 со "сплошным" id
Код: sql
1.
2.
3.
4.
5.
6.
SELECT
  s.id,
  @sm := @sm + s.id AS NAKOP_SUM
FROM seq1000 AS s, /* поменять на рандомный запрос*/
     (SELECT @sm := 0) AS rwt
HAVING @sm < 1000 /*ваш предел*/


сделайте применительно к RAND()-омно упорядоченной вашей таблицей,
т.е. сначала SELECT * FROM MyTable ORDER BY RAND(). а затем считаете накопительный итог
...
Рейтинг: 0 / 0
Выборка товаров по сумме цен
    #39157172
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Ustinov,

такой запрос, правда, выведет на 1 строку больше... чуть переделать надо...
...
Рейтинг: 0 / 0
Выборка товаров по сумме цен
    #39157342
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ярыйtanglir,

не пойдет, потому что получим список из дешевых товаров, нужно чтобы товары были из разных ценовых категорийну тогда не сортируй, проблем-то...
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Выборка товаров по сумме цен
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]