我得到了一個複雜的查詢,它產生了一個連接的結果。但是,儘管GROUP_CONCAT
對於其他目的是必需的,但我仍然需要能夠分別使用連接字符串的各個部分。單獨使用級聯結果
GROUP_CONCAT(id, name, date AS concat1
echo $db_field['concat1'];
...產生這樣的輸出:IdNameDate
,我需要能夠使用(和迴音)ID,姓名和日期分開。我想它必須分配給一個數組,我是PHP中的一個begginer,我非常感謝任何幫助。
爲了簡單起見,以上我已經使用id
代替eventid
,name
代替eventname
和date
代替eventstartdate
。以下是完整的代碼。
if ($db_found) {
$SQL ="
select sportname,
tournament_templatename,
tournament_stagename,
GROUP_CONCAT(eventid, eventname, eventstartdate SEPARATOR '<br />') as concat1
from (
SELECT event.id AS eventid,
event.name AS eventname,
event.tournament_stageFK AS eventtournamentstageFK,
event.startdate AS eventstartdate,
tournament_stage.id AS tournament_stageid,
tournament_stage.name AS tournament_stagename,
tournament_stage.tournamentFK AS tournament_stagetournamentFK,
tournament.id AS tournamentid,
tournament.name AS tournamentname,
tournament.tournament_templateFK AS tournamenttournament_templateFK,
tournament_template.id AS tournamenttemplateid,
tournament_template.name AS tournament_templatename,
tournament_template.sportFK AS tournament_templatesportFK,
sport.id AS sportid,
sport.name AS sportname
FROM
event INNER JOIN tournament_stage ON event.tournament_stageFK=tournament_stage.id
INNER JOIN tournament ON tournament_stage.tournamentFK=tournament.id
INNER JOIN tournament_template
ON tournament.tournament_templateFK=tournament_template.id
INNER JOIN sport ON tournament_template.sportFK=sport.id
WHERE
DATE(event.startdate) = CURRENT_DATE()
) a
group by sportname, tournament_templatename, tournament_stagename
order by sportid, tournament_templatename, tournament_stagename";
$result = mysql_query($SQL);
if($result === FALSE) {
die(mysql_error());
}
while($db_field=mysql_fetch_assoc($result)){
echo $db_field['concat1'];
}
mysql_close($db_handle);
}
我要麼需要一種方式串聯他們之前得到返回結果,或顯示IdNameDate作爲標識*名稱*日期,所以我可以用一種方式*爲爆炸分隔符。
我不知道如何將變量分配給該代碼。 – 2011-12-30 20:33:06