Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

Запрос к базе


evgeny8778
 Поделиться

Рекомендованные сообщения

Здравствуйте!

 

Помогите пожалуйста правильно составить запрос.

Суть: Для клиентов магазина, находящихся в группе "постоянный покупатель" предусмотрена определённая скидка. Для попадания в эту группу, обычному покупателю необходимо совершить покупки на сумму 10 000 руб. Нужно чтобы этот обычный клиент у себя в кабинете видел, на какую сумму ему необходимо совершить покупки чтобы попасть в группу "постоянный покупатель".

 

 Я нашёл функцию



public function getTotalOrders() {
      	$query = $this->db->query("SELECT SUM(total) AS total FROM `" . DB_PREFIX . "order` WHERE customer_id = '" . (int)$this->customer->getId() . "' AND order_status_id > '0'");
		
		return $query->row['total'];
	}

Она выводит общую стоимость совершённых покупателем заказов.

добавив после SELECT 10000 -  я получил:



public function getTotalOrders() {
      	$query = $this->db->query("SELECT 10000 - SUM(total) AS total FROM `" . DB_PREFIX . "order` WHERE customer_id = '" . (int)$this->customer->getId() . "' AND order_status_id > '0'");
		
		return $query->row['total'];
	}

то есть из 10 000 вычитается итоговая сумма заказов. Естественно после того, как стоимость заказов переваливает за 10 000 покупатель видит отрицательное число.

 

Помогите составить запрос так, чтобы после того, как стоимость заказов пройдёт отметку 10 000, покупатель в кабинете вместо отрицательного числа видел 0р.  Либо, чтобы после перевода покупателя в группу "Постоянный покупатель" для него подобная запись не отображалась.

 

Ссылка на комментарий
Поделиться на других сайтах


Интересная задачка.

Укажите какой движок вы используете? А пока вот мое решение:

-- в селекте укажите
SELECT IF(10000 < SUM(total), 0, SUM(total)) AS total

Может решение не оптимальное, но хотя бы попробовать

  • +1 1
Ссылка на комментарий
Поделиться на других сайтах


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.