我在我的数据库示例中有这个:
tA------tB
lewbr - blabla1
lewbr - blabla2
lewbr - blabla3
blabla1 - lewbr
blabla2 - lewbr
blabla3 - lewbr
我需要在SELECT
上做些什么来获取lewbr
的所有文字?
示例:List of LewBr: blbla1, blabla2, blabla3
我在PHP的软件游戏中有这个:
public function getAllFriends($oi1) {
$a = $this->plugin->provider->db->query("SELECT * FROM amigos WHERE tA='$oi1'");
$b = mysqli_fetch_assoc($a);
return $b;
}
EVENT
$msg = null;
foreach($this->getAllFriends($player) as $friend => $p) {
if($friend == 'p2') {
$msg .= "$p, ";
}
}
$sender->sendMessage("HI: $msg");
return;
但它只返回列表中的1个玩家..比如
List of LewBr: blabla1,
答案 0 :(得分:0)
如果您希望列表中同一行的所有值都使用逗号分隔值,则可以使用group_concat
"SELECT group_concat(tb) as my_amigos
FROM amigos WHERE tA='$oi1'
group by tA"
你可以轻松地在没有foreach的情况下看到列表...只需访问my_amigos列,例如:
$row = mysqli_fetch_assoc($a);
var_dump($row['my_amigos']);
如果您不想将逗号作为分隔符,则可以使用空格,例如:
"SELECT group_concat(tb SEPARATOR ' ' ) as my_amigos
FROM amigos WHERE tA='$oi1'
group by tA"