Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Запрос к базе


evgeny8778

Recommended Posts

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

 

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

Суть: Для клиентов магазина, находящихся в группе "постоянный покупатель" предусмотрена определённая скидка. Для попадания в эту группу, обычному покупателю необходимо совершить покупки на сумму 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 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.