php - 显示串联的sql数据

标签 php mysql

我正在尝试在单个表格框中显示来自sql 中的多行的数据。 格式为:

"MovieTitle" "movieReleaseYear" "directorName"

The Matrix      1999             Andy Wachowski, Lana Wachowski

其中 Andy Wachowski 和 Lana Wachowski 来自不同的行,但通过 group_concat 聚集在一起

我在 phpmyadmin 中获取它们没有问题,但我不知道如何在 php 中显示它。

我有这个:

$sql="SELECT 725G54_5_movies.MovieTitle, 725G54_5_movies.movieProductionYear,      GROUP_CONCAT( 725G54_5_director.directorName ) 
                    FROM 725G54_5_movies
                    JOIN 725G54_5_directed ON 725G54_5_movies.MovieID = 725G54_5_directed.movieID
                    JOIN 725G54_5_director ON 725G54_5_directed.directorID = 725G54_5_director.directorID
                    GROUP BY 725G54_5_movies.MovieTitle
                    ORDER BY $order ASC";
                $result=mysql_query($sql);  

                //Presentation av kontakterna via while-sats till ett formulär
                while($rows=mysql_fetch_array($result)){

                echo "<tr>
                <td>"; echo $rows['MovieTitle']; echo "</td>
                <td>";  echo $rows['movieProductionYear']; echo "</td>
                <td>"; 
                    while($director=mysql_fetch_array($rows['directorName'])){ echo $director; }; 
                    echo"</td>
                </tr>";

最佳答案

Group Concat 已经连接了董事的姓名,因此您不需要迭代 $rows['directorName'] 。代码中的这一部分 id 错误,因为 $ rows 是查询结果中的一行,$rows['director'] 是该行中的值,您无法迭代值。

 $sql = "SELECT GROUP_CONCAT( 725G54_5_director.directorName ) AS directorNames ..."

while($rows=mysql_fetch_array($result)){

                echo "<tr>";
                echo "<td>" . $rows['MovieTitle'] . "</td>";
                echo "<td>" . $rows['movieProductionYear'] . "</td>"
                echo "<td>" . $rows['directorNames'] . "</td>" 
                echo"</tr>";
}

您使用 GROUP BY 725G54_5_movies.MovieTitle,因此 directorNames 字段将是该电影的所有 directorName 连接的结果。

关于php - 显示串联的sql数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16731969/

相关文章:

php - laravel 4.2 对复杂查询进行分页

javascript - 为什么双引号 PHP echo 字符串中的双斜杠注释会产生 JS 错误?

php - 使用 PHP 对象设置递归属性是否安全?

具有 Sum、Join 和 Group By 的 Mysql 子查询

mysql - sqlmap 中基于 bool 和时间相关的 SQL 注入(inject)的组合

php - 使用 php 查询 mysql 行

php 表单将动态值、项目 ID 传递给 mysql

PHP 重复表单验证。如何使用javascript进行验证?

mysql - 什么数据类型适合存储纬度和经度?

mysql - SQL 如何处理子类别