mysql count if

MySQL пример сложного запроса с подзапросом, GROUP BY, ORDER_BY, LEFT JOIN, LIMIT, SUM IF - суммы с условием

Forums:

Вот такой пример:

SELECT * FROM ( # начало подзапроса
	SELECT us.user_id, us.seller_profile, us.customer_profile, us.seller_about, us.customer_about, 
			SUM(if(ur.etype = 1, 1, 0)) AS seller_recalls_count, 
			SUM(if(ur.etype = 3 OR ur.exch_type = 4, 1, 0)) AS customer_recalls_count  
		FROM user_settings us LEFT JOIN user_recall ur ON us.user_id = ur.recipient_id 
			WHERE (noindex = 0)  GROUP BY us.user_id ORDER BY user_id LIMIT 5000 , 500  
	) as sub_table #конец подзапроса
WHERE (customer_recalls_count > 0) 
      OR (seller_recalls_count > 0) 

mysql COUTN IF - пример SQL запроса, посчёт суммы с условием SUM IF

Forums:

Чтобы рассчитать некоторое значение, но с условием, нам нужен не подсчёт числа COUNT(), а оператор суммы SUM(), в который просто можно о определённых случаях передавать ноль, например:

SELECT user_id, uabout,  # какие-то поля выбираем просто
    SUM(if(etype = 1, 1, 0)) AS s_count, # если поле = 1, то накручиваем счётчик
	SUM(if(etype = 3 OR etype = 4, 1, 0)) AS c_count  # если поле = 3 или =4, накручиваем
  FROM u_settings # из какой таблицы
    WHERE (noindex = 0)  # группа условий
      GROUP BY user_id # по чём группировка
Subscribe to RSS - mysql count if