met Mysql Positie in resultaat bepalen
In het script dat ik een het bouwen ben wil ik graag een beperkt resultaat van het resultaat van mijn query tonen.
Op basis van het fav_team_id(dat kan maar één team zijn) wil ik één record Boven en één onder fav_team_id tonen. dus stel dat heerenveen mijn fav_team is zo iets:
14 FCT 2 2 0 2 0 0-0
15 HEE 2 1 0 1 1 1-3
16 NAC 2 0 0 1 1 2-4
Omdat ik weet dat mijn fav_team_id deze ronde op positie 15 staat kan ik door het toevoegen van een
Het gewenste resultaat krijgen. Maar de parameter 14 is iedere ronde een andere waarde
Op basis van het fav_team_id(dat kan maar één team zijn) wil ik één record Boven en één onder fav_team_id tonen. dus stel dat heerenveen mijn fav_team is zo iets:
14 FCT 2 2 0 2 0 0-0
15 HEE 2 1 0 1 1 1-3
16 NAC 2 0 0 1 1 2-4
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
select
c.cs_stand_team_id as teamid,
IF(c.cs_stand_team_id=g.cs_config_fav_team_id,1,0) as fav_team_id,
t.cs_teamname_long as teamnamelong,
t.cs_teamname_short as teamnameshort,
SUM(c.cs_stand_winst+ c.cs_stand_gelijk+ c.cs_stand_verlies) AS aantalwedstrijden,
t.cs_teamstrafpunten,
SUM(
IF(c.cs_stand_winst='1',3,0)+
IF(c.cs_stand_gelijk='1',1,0))-
IF(t.cs_teamstrafpunten>'0',t.cs_teamstrafpunten,0) AS punten,
SUM(c.cs_stand_winst) AS cs_winst,
SUM(c.cs_stand_gelijk) AS cs_gelijk,
SUM(c.cs_stand_verlies) AS cs_verlies,
SUM(c.cs_stand_voor) AS score_voor,
SUM(c.cs_stand_tegen) AS score_tegen,
SUM(c.cs_stand_voor- c.cs_stand_tegen) AS doelsaldo
FROM
cs_stand c,
cs_teams t,
cs_config g
Where
c.cs_stand_team_id = t.cs_team_id
Group by
c.cs_stand_team_id
Order by
punten desc,
cs_winst desc,
cs_gelijk desc,
cs_verlies desc,
c.cs_stand_voor desc,
doelsaldo desc,
t.cs_teamname_long
c.cs_stand_team_id as teamid,
IF(c.cs_stand_team_id=g.cs_config_fav_team_id,1,0) as fav_team_id,
t.cs_teamname_long as teamnamelong,
t.cs_teamname_short as teamnameshort,
SUM(c.cs_stand_winst+ c.cs_stand_gelijk+ c.cs_stand_verlies) AS aantalwedstrijden,
t.cs_teamstrafpunten,
SUM(
IF(c.cs_stand_winst='1',3,0)+
IF(c.cs_stand_gelijk='1',1,0))-
IF(t.cs_teamstrafpunten>'0',t.cs_teamstrafpunten,0) AS punten,
SUM(c.cs_stand_winst) AS cs_winst,
SUM(c.cs_stand_gelijk) AS cs_gelijk,
SUM(c.cs_stand_verlies) AS cs_verlies,
SUM(c.cs_stand_voor) AS score_voor,
SUM(c.cs_stand_tegen) AS score_tegen,
SUM(c.cs_stand_voor- c.cs_stand_tegen) AS doelsaldo
FROM
cs_stand c,
cs_teams t,
cs_config g
Where
c.cs_stand_team_id = t.cs_team_id
Group by
c.cs_stand_team_id
Order by
punten desc,
cs_winst desc,
cs_gelijk desc,
cs_verlies desc,
c.cs_stand_voor desc,
doelsaldo desc,
t.cs_teamname_long
Omdat ik weet dat mijn fav_team_id deze ronde op positie 15 staat kan ik door het toevoegen van een
Het gewenste resultaat krijgen. Maar de parameter 14 is iedere ronde een andere waarde
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
$positie=1 ; // de teller voor de positie de startwaarde 1 geven
$row_count=0
while($uitslag=mysql_fetch_array($stand_resultaat))
{
$row_color = ($row_count % 2) ? $color1 : $color2;
$score= $uitslag['score_voor']."-".$uitslag['score_tegen'];
//$uitslag['fav_team_id']
If($uitslag['fav_team_id']<>'1')
{
($standrow ='<tr bgcolor='.$row_color.'>
<td align="center">'.$positie .'</td>
<td >'.$uitslag['teamnameshort'].'</td>
<td align="center"><strong>'. $uitslag['aantalwedstrijden'] .'</strong></td>
<td align="center">'. $uitslag['punten'].'</td>
<td align="center">'. $uitslag['cs_winst'].'</td>
<td align="center">'. $uitslag['cs_gelijk'].'</td>
<td align="center">'. $uitslag['cs_verlies'].'</td>
<td align="center">'. $score .'</td>
</tr>');
}else{
($standrow ='<tr bgcolor='.$row_color.'>
<td align="center">'.$positie .'</td>
<td ><strong>'.$uitslag['teamnameshort'].'</strong></td>
<td align="center"><strong>'. $uitslag['aantalwedstrijden'] .'</strong></td>
<td align="center">'. $uitslag['punten'].'</td>
<td align="center">'. $uitslag['cs_winst'].'</td>
<td align="center">'. $uitslag['cs_gelijk'].'</td>
<td align="center">'. $uitslag['cs_verlies'].'</td>
<td align="center">'. $score .'</td>
</tr>');
}
echo $standrow;
$positie++;
$row_count++;
}
?>
$positie=1 ; // de teller voor de positie de startwaarde 1 geven
$row_count=0
while($uitslag=mysql_fetch_array($stand_resultaat))
{
$row_color = ($row_count % 2) ? $color1 : $color2;
$score= $uitslag['score_voor']."-".$uitslag['score_tegen'];
//$uitslag['fav_team_id']
If($uitslag['fav_team_id']<>'1')
{
($standrow ='<tr bgcolor='.$row_color.'>
<td align="center">'.$positie .'</td>
<td >'.$uitslag['teamnameshort'].'</td>
<td align="center"><strong>'. $uitslag['aantalwedstrijden'] .'</strong></td>
<td align="center">'. $uitslag['punten'].'</td>
<td align="center">'. $uitslag['cs_winst'].'</td>
<td align="center">'. $uitslag['cs_gelijk'].'</td>
<td align="center">'. $uitslag['cs_verlies'].'</td>
<td align="center">'. $score .'</td>
</tr>');
}else{
($standrow ='<tr bgcolor='.$row_color.'>
<td align="center">'.$positie .'</td>
<td ><strong>'.$uitslag['teamnameshort'].'</strong></td>
<td align="center"><strong>'. $uitslag['aantalwedstrijden'] .'</strong></td>
<td align="center">'. $uitslag['punten'].'</td>
<td align="center">'. $uitslag['cs_winst'].'</td>
<td align="center">'. $uitslag['cs_gelijk'].'</td>
<td align="center">'. $uitslag['cs_verlies'].'</td>
<td align="center">'. $score .'</td>
</tr>');
}
echo $standrow;
$positie++;
$row_count++;
}
?>
Gewijzigd op 22/08/2010 11:38:26 door Mar kla
Er zijn nog geen reacties op dit bericht.




