Задавайте вопросы, мы ответим
Вы не зашли.
Собственно, нужно вывести список клиентов, сделавших одинаковые ставки на разные матчи.
Соотв-й фрагмент таблицы:
где sum - сумма ставки
Вроде простенько, но что-то у меня голова не варит чем именно нужно восп-ся, чтобы вывести именно одинаковые ставки на разные матчи
Буду благодарен за любую помощь
Отредактированно tvsjke (08.03.2013 19:32:42)
Неактивен
Неактивен
хммм, выдает:
колонка "bets.client_id" должна фигурировать в предложении GROUP BY или использоваться в агрегатной функции
и, если можно, вывод сделать по типу
client_id match_id sum
1 1 50
1 2 50
1 24 50
3 1 140
Как-то так.
Отредактированно tvsjke (08.03.2013 20:31:28)
Неактивен
блин, люди добрые, кому не лень - потратьте пять минут своего времени и помогите пжлст, сессия горит, руки кривые, замкнутый круг
Неактивен
Приведите Ваш набор данных (то есть содержимое таблицы bets), на котором выдаётся ошибка, не могу воспроизвести.
Чтобы выводилось в том виде, который Вы хотите попробуйте
select client_id, match_id, sum from t_6529 group by match_id, `sum` having count(*)>1;
Неактивен
У меня что то не получился простой запрос, но вроде выдает правильные данные.
Отредактированно evgeny (10.03.2013 00:09:26)
Неактивен
evgeny, спасибо, все работает четко, но хотелось бы еще
tvsjke написал:
и, если можно, вывод сделать по типу
client_id match_id sum
1 1 50
1 2 50
1 24 50
3 1 140
тоесть не distinct client_id, а в таком же кол-ве, как кол-во одинаковых ставок,
в случае Вашего insert должно было бы выводиться
4 1 10
4 2 10
5 3 20
5 1 20
И да, еще раз спасибо за помощь.
Неактивен
Если убрать дублированную ставку (возможно вам такие случаи вообще не нужны)
Неактивен
Статус под Вашим ником истину глаголит Спасибо, все идеально
Неактивен
Someone help again
Нужно сделать триггер - удаление клуба.
Фрагмент таблицы:
Почитав статейки, погуглив, настрочил вот что:
create or replace function del_club()
RETURNS TRIGGER AS $$
BEGIN
IF (SELECT COUNT(*) FROM matches_clubs WHERE club_id=OLD.id)>0
THEN DELETE FROM matches_clubs WHERE club_id=OLD.id;
END IF;
RETURN OLD;
END;
$$LANGUAGE plpgsql;
CREATE trigger del_club
BEFORE DELETE
ON clubs
FOR EACH ROW
EXECUTE PROCEDURE del_club();
Выбивает ошибку, связанную с OLD (возможно, она не единственна ).
Отредактированно tvsjke (10.03.2013 21:38:46)
Неактивен