webForumDet fria alternativet

GROUP BY

4 svar · 510 visningar · startad av Web-Tor

Web-TorMedlem sedan nov. 200011 794 inlägg
#1

Jag använde den här frågan för att hämta unika Owner:

$sql = "SELECT colTag, colIndex FROM cou WHERE colArea = '$name' GROUP BY colOwner";

Nu vill jag ha in ett villkor som säger att "om colIndex = N/A skall dom hamna i en egen group"

Någon som hänger med på vad jag menar?

(Frågan gäller php och MySQL)

Peter SMedlem sedan dec. 20025 484 inlägg
#2
$sql = "SELECT colTag, colIndex FROM cou WHERE colArea = '$name' GROUP BY CASE WHEN colIndex = 'N/A' THEN 'N/A' ELSE colOwner END";
Web-TorMedlem sedan nov. 200011 794 inlägg
#3

Det ser riktigt trevligt ut men jag får inte riktigt till det. Hur skiljer jag på de olika alternativen? Hur får jag ut dom olika grupperna?

Idag (med sql-frågan i mitt första inlägg) tar jag ut resultatet så här:

$result = mysql_query($sql); 
while ($row = mysql_fetch_assoc($result)){
	createGroup($doc,$moc,$name,$row['colTag']);
}

Nu vill jag alltså ropa på en annan funktion om det är så att colIndex = N/A.

Web-TorMedlem sedan nov. 200011 794 inlägg
#4

Jag har fått tänka om lite. :l

Jag vill gruppera efter de rader där colArea, colValidFor och colIndex tillsammans är unika. Förutom det behöver jag ha med följande info i SQL-frågan

$sql = "SELECT colTag, colIndex FROM cou WHERE colArea = '$vArea'";

Några förslag?

Web-TorMedlem sedan nov. 200011 794 inlägg
#5

Det var ju inte så svårt:

$sql = "SELECT colTag, colIndex FROM cou WHERE colArea = '$vArea' GROUP BY colArea, colIndex, colValidFor";

Det visade sig att jag hade ett fel längre ner i koden som strulade till det.

Genererad på 374 ms · cache AV · v20260730165559-full.f96bc7eb