微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – SELECT查询,一列有LIMIT 1,但不是其余的

我可以为一个特定列限制1而不是其余列吗?我有两张桌子.一个有信息,一个有图像.对于尽可能多的图像,运行许多信息查询.因此,它将是5个图像和5个相同的标题.我怎样才能限制1个标题,限制3个图像?

$query = MysqL_query("
                     SELECT `$category`.title AS title,
                     page_images.image_loc AS images
                     FROM `$category`, page_images
                     WHERE `$category`.title = page_images.title
                    ");

            while($fetch = MysqL_fetch_assoc($query)) {

                $title  = $fetch['title'];              
                $images = $fetch['images'];

                echo '<b>'.$title.'</b><br />';
                echo '<a href="http://localhost/'.$images.'">
                        <img src="http://localhost/'.$images.'" height="80" width="80" />
                      </a>';

                }

解决方法:

您可以按标题分组并使用GROUP_CONCAT收集图像位置.然后您可以将收集的位置分解为数组.并打印所有图像.

这就是我的意思

$query = MysqL_query( "
SELECT
     title AS title
    ,GROUP_CONCAT( i.image_loc ) AS images
FROM
    `$category` c
    JOIN page_images i USING( title )
GROUP BY
    title
" );

while( $fetch = MysqL_fetch_assoc( $query ) ) {
    $title  = $fetch[ 'title' ];              
    $images = explode( ',', $fetch[ 'images' ] );

    echo '<b>' . $title . '</b><br />';
    foreach( $images as $image ) {
        echo '<a href="http://localhost/'.$image.'">
            <img src="http://localhost/'.$image.'" height="80" width="80" />
        </a>';
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐