Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何以这种方式构造mysql结果?_Php_Mysql - Fatal编程技术网

Php 如何以这种方式构造mysql结果?

Php 如何以这种方式构造mysql结果?,php,mysql,Php,Mysql,我想做的是让我的表格结构如下: The Monkees - I'm A Believer The Monkees - Daydream Believer The Beatles - Hello, Goodbye The Beatles - Yellow Submarine 艺术家和标题名称在同一行,我试图在搜索结果中显示它们: The Monkees: I'm A Believer Daydream Believer The Beatles: Hello, Goodbye Yellow

我想做的是让我的表格结构如下:

The Monkees - I'm A Believer
The Monkees - Daydream Believer  
The Beatles - Hello, Goodbye
The Beatles - Yellow Submarine 
艺术家和标题名称在同一行,我试图在搜索结果中显示它们:

The Monkees:
I'm A Believer
Daydream Believer

The Beatles:
Hello, Goodbye
Yellow, Submarine
艺术家的名字只出现一次,就像歌曲标题上方的一个类别

有没有办法用MySQL语句实现这种结构

编辑:

我尝试过使用group_concat,但我只能显示歌曲标题,而不能显示艺术家姓名。我的代码:

<?php
include 'config.php';
$trimmed = $_GET['term'];

$res = mysql_query("SELECT DISTINCT artist, GROUP_CONCAT(title SEPARATOR ', ') AS artists FROM songs WHERE artist LIKE '%$trimmed%'");
$row = mysql_fetch_array($res, MYSQL_ASSOC);
$result = $row['artists'];

echo $result;

?>

你有没有考虑过做一个测试?除此之外,您还可以在循环执行以下操作时创建数组:

$music = array();
$result = mysql_query("SELECT ARTIST,ALBUM FROM MUSIC") or die(mysql_error());
while($row = mysql_fetch_assoc($result)){
    $music[$row['ARTIST']][] = $row['ALBUM'];
}
echo '<pre>'.print_r($music,1).'</pre>';
$music=array();
$result=mysql_query(“从音乐中选择艺术家、专辑”)或die(mysql_error());
while($row=mysql\u fetch\u assoc($result)){
$music[$row['ARTIST'][]=$row['ALBUM'];
}
echo.''打印($music,1)。'';

在您的查询结束时,是否按艺术家分组?在对GROUP_concat进行了一些研究之后,我陷入了困境,目前只能显示歌曲标题。我已经在我原来的帖子中发布了我的代码。我已经使用了你的php代码,它工作得非常好,尽管在寻找解决方案之后,我仍然不知道如何格式化艺术家姓名和歌曲标题,以适当地从带有链接、css等的数组中回音。正如你所说,我仍然在学习php和mysql。我将做更多的研究,看看我自己是否能找到这些答案,不过如果有人能帮我,我将不胜感激!:)不管怎样,我刚刚了解了如何使用嵌套循环之类的东西,所以我知道了如何使用数组格式化。我相信在谷歌搜索了一段时间后,我会找到如何与group_concat合作的方法。谢谢你的帮助!