如何在不使用PHP循环的情况下返回MySQL数组结果

Rel*_*elm 0 php mysql loops join

我正在尝试将此查询与另一个查询相关联,但这将需要立即执行所有操作而不留下此语句.

MYSQL

"SELECT pid FROM posts WHERE uid = ? && state = 'a' ORDER BY time DESC LIMIT 5"
Run Code Online (Sandbox Code Playgroud)

使用PHP的同时.

while($row = $get->fetch()){
    echo $row['pid'].' ,';
}
Run Code Online (Sandbox Code Playgroud)

我得到的东西是:2,5,8,31,40

有没有办法在不退出查询的情况下获得相同的值?

类似SELECT的返回值

所以我能做到:$row['returned_values'];得到:"2,5,8,31,40"

Mr.*_*eer 5

只需使用GROUP_CONCAT:

"select GROUP_CONCAT(pid) as returned_values from ( SELECT pid  FROM posts WHERE 
                            uid = ? 
                            && state = 'a' 

                            ORDER BY time DESC 
                            LIMIT 5) as s"
Run Code Online (Sandbox Code Playgroud)

请参阅:http://www.mysqltutorial.org/mysql-group_concat/