Odds-regnskab.
Hej eksperter,Jeg sidder og roder med at få styr på en måde at lave regnskab over forskellige odds.
Jeg har en tabel, der ser ud som følger:
`id` int(6) NOT NULL auto_increment,
`match1` varchar(100) default NULL,
`match2` varchar(100) default NULL,
`odds1` decimal(3,2) default NULL,
`odds2` decimal(3,2) default NULL,
`bet1` varchar(10) default NULL,
`bet2` varchar(10) default NULL,
`winner1` int(1) NOT NULL default '2',
`winner2` int(1) NOT NULL default '2',
`country1` varchar(100) default NULL,
`country2` varchar(100) default NULL,
`league1` varchar(100) default NULL,
`league2` varchar(100) default NULL,
`time1` datetime default NULL,
`time2` datetime default NULL,
`bookmaker` varchar(100) default NULL,
`text` text,
`value` int(3) NOT NULL default '0',
`user_id` int(6) default NULL,
Jeg kan sagtens lave simple udtræk, der viser de forskellige odds og hvormeget man eventuelt har vundet, men når jeg vil lave et udtræk om til en form for regnskab får jeg fejl.
Udtrækket ser således ud:
mysql_query("SELECT *,
odds1*odds2*value-value AS money,
odds1*value-value AS money1,
SUM(
IF(match2 = '' AND winner1 = 1, money1,
IF(match2 = '' AND winner1 = 0, -value, 0))) AS regnskab1,
SUM(
IF(match2 != '' AND winner1 = 1 AND winner2 = 1, money,
IF(match2 != '' AND (winner1 = 0 OR winner2 = 0), -value, 0))) AS regnskab2,
regnskab1+regnskab2 AS regnskab
FROM bookie WHERE user_id='$_GET[id]'");
money viser gevinsten, hvis man har spillet en double.
money1 viser gevinsten, hvis man har spillet en single.
regnskab1 skulle gerne finde det samlede tab/overskud for singlerne.
regnskab2 skulle gerne finde det samlede tab/overskud for doublerne.
regnskab skulle gerne ligge de to sammen.
Problemet ligger i:
SUM(
IF(match2 = '' AND winner1 = 1, money1,
IF(match2 = '' AND winner1 = 0, -value, 0))) AS regnskab1,
SUM(
IF(match2 != '' AND winner1 = 1 AND winner2 = 1, money,
IF(match2 != '' AND (winner1 = 0 OR winner2 = 0), -value, 0))) AS regnskab2,
Skal jeg bruge IS/IS NOT og i så fald hvordan?
Lige til lidt forklaring:
Hvis match2 er tom er det et single spil, er den ikke det, er det en double.
winner1 og winner2 definerer om oddset er rigtig, forkert eller endnu ikke afgjort
0 = forkert
1 = rigtigt
2 = ikke afgjort
Håber det var forståeligt og at nogen kan se hvor mit problem ligger!
MVH Weeelo
