---
title: "Fet SQL loop!"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/86626-fet-sql-loop"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Neo"
published: "2003-09-22T09:58:35.000Z"
updated: "2003-09-22T09:58:35.000Z"
replies: 0
views: 244
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/86626-fet-sql-loop"
---

# Fet SQL loop!

## #1 — Neo, 2003-09-22T09:58Z

\*\*\* sorry, jag postade i PHP, skulle vara i MySQL \*\*\* :-)

Hej!

Jag undrar om någon kan hjälpa mig att göra dessa loopar effektivare...

Jag ska visa ett helt år, dvs 52 veckor.

Sen ska jag visa alla filmer som ligger i db:n och visa hur många gånger de förekommer per vecka...

t ex.

Film 1, vecka 38, 40 ggr
Film 1, vecka 39, 5 ggr

osv... jag har lyckats med funktionen men det tar våldigt långt tid att exekvera och jag känner att det borde finnas smartare sätt att göra det på.

Kolla koden:

\<table border="0" cellspacing="3" cellpadding="7"\>
\<?
echo("\<tr bgcolor=\\"#FFFFFF\\"\>\<td width=\\"100\\"\>\<strong\>Vecka\</strong\>\</td\>");
$weekcounter=1;
do {
echo("\<td valign=\\"top\\"\>\<strong\>$weekcounter\</strong\>\</td\>");
$weekcounter++;
} while($weekcounter\<=52);

echo("\</tr\>");
?\>

\<?
$sql = "SELECT DISTINCT movie FROM xxx ORDER by movie ASC";
$result = mysql_query($sql);
$array = mysql_fetch_array($result);
if (mysql_num_rows($result)\>0) {
do {
$weekcounter = 1;
$movie = $array\["movie"\];

if ($type=='ad') {
$text_color = "#CC0000";
} else {
$text_color = "#000000";
}

echo("\<tr title=\\"$movie\\" bgcolor=\\"#FFFFFF\\" onclick=\\"javascript:this.bgColor='#ffcc66';\\"\>\<td width=\\"100\\"\>\<span style=\\"color:$text_color;\\"\>$movie\</span\>\</td\>");

$weekcounter2 = 1;
do {
$sql2 = "SELECT id FROM xxx WHERE movie='$movie' and week='$weekcounter2'";
$result2 = mysql_query($sql2);
$array2 = mysql_fetch_array($result2);
$total_rows = mysql_num_rows($result2);
echo("\<td valign=\\"top\\"\>$total_rows\</td\>");
$weekcounter2++;
} while($weekcounter2\<=52);

echo("\</tr\>");

	} while ($array = mysql_fetch_array($result));
}
?\>

\</table\>

Permalänk: https://www.webforum.nu/p/86626

---

Tråden på webben: https://www.webforum.nu/amne/php/86626-fet-sql-loop
