![]() |
Задавайте вопросы, мы ответим
Вы не зашли.
есть таблица t1
id --- user --- bonus---date
в нее вносятся пользователи их бонус и дата получения бонуса.
из нее нужно выбрать
user; колличество бонусов >=0; сумма колличество бонусов >=0; колличество бонусов <0; сумма колличество бонусов <0
создал таблицу t2, откинул туда USER исключив повторения их в t1
в ней сделал поля
id;user;bol(колличество бонусов >=0);sbol(сумма колличество бонусов >=0);me(колличество бонусов <0);sme(сумма колличество бонусов <0)
вопрос как организовать выборку из t1 чтоб заполнить t2
1- забрать из t2.user выбрать его из t1.user
2- посчитать <>0 и сумму
3- закинкть в t2 данные
Отредактированно red21 (16.04.2008 11:23:46)
Неактивен

INSERT INTO t2 (user, bol, sbol, me, sme) -- перечисляем столбцы для вставки
-- далее формируем данные для ставки напрямую из запроса SELECT
SELECT
user,
SUM(IF(bonus >= 0, 1, 0)), -- количество бонусов >= 0
SUM(IF(bonus >= 0, bonus, 0)), -- сумма бонусов >= 0
SUM(IF(bonus < 0, 1, 0)), -- количество бонусов < 0
SUM(IF(bonus < 0, bonus, 0)) -- сумма бонусов < 0
FROM t1
GROUP BY user;Неактивен
ругается на синтаксис в "SUM(IF(bonus >=0), 1, 0)"
Неактивен

Пардон. Исправил (когда писал ответ, спешил и не успел проверить, поэтому скобку не там поставил).
Неактивен