[mysql]根据名称计数结果

标签: MySQL PHP
发布时间: 2015/6/11 7:00:33
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我真的不知道如何标题这但不管。

我需要这个来显示每个宠物小精灵,在插槽 0,但是,如果同一口袋妖怪会出现一次想要什么而不是添加到显示的另一幅图像的图像旁边 2。对不起,我不在解释事情最好。

这里是什么吗,我知道这是一个烂摊子。

<?php
$result = mysql_query("SELECT * FROM user_pokemon WHERE belongsto='". $_SESSION{'username'}."'AND (slot='0')");
while($row = mysql_fetch_array($result))
{   
$sql2 = "SELECT * FROM pokemon WHERE name='".$row['pokemon']."'";
$result2 = mysql_query($sql2) or die(mysql_error());
$battle_get2 = mysql_fetch_array($result2);
?>
<div style="width: 20%; float: left;">
<?php
echo '<img src="pokemon/'.$row['type'] .''.$battle_get2['pic'].'" border=0>' ; 

$idd= mysql_real_escape_string($row['id']);
$iddd = strip_tags($idd);

?>

这是我是如何结束了使它工作,谢谢你的帮助:)

<?php
$result = mysql_query("SELECT *, COUNT(*) number FROM user_pokemon WHERE belongsto='". $_SESSION{'username'}."'AND (slot='0') GROUP BY pokemon");
while($row = mysql_fetch_array($result))
{   

$sql2 = "SELECT * FROM pokemon WHERE name='".$row['pokemon']."'";
$result2 = mysql_query($sql2) or die(mysql_error());
$battle_get2 = mysql_fetch_array($result2);

?>
<div style="width: 20%; float: left;">
<?php
echo '<img src="pokemon/'.$row['type'] .''.$battle_get2['pic'].'" border=0>' ; 
if($row["number"] > 1) echo $row["number"] . " Pokemons";
$idd= mysql_real_escape_string($row['id']);
$iddd = strip_tags($idd);

?>

解决方法 1:

你应该改变你的查询和分组 pokemon 和另外选择 COUNT(*) 。另外你可以在你第一次查询中,使用内部联接,所以你不必做另一个查询。

SELECT *, COUNT(*) number FROM user_pokemon up INNER JOIN pokemon p ON(up.pokemon = p.name) WHERE belongsto='". $_SESSION{'username'}."'AND (slot='0') GROUP BY up.id

整个 PHP:

<?php
$result = mysql_query("SELECT *, COUNT(*) number FROM user_pokemon up INNER JOIN pokemon p ON(up.pokemon = p.name) WHERE belongsto='". $_SESSION{'username'}."'AND (slot='0') GROUP BY p.id");
while($row = mysql_fetch_array($result))
{   
?>
<div style="width: 20%; float: left;">
<?php
echo '<img src="pokemon/'.$row['type'] .''.$row['pic'].'" border=0>' ; 
if($row["number"] > 1) echo $row["number"] . " Pokemons";
$idd= mysql_real_escape_string($row['id']);
$iddd = strip_tags($idd);
?>
官方微信
官方QQ群
31647020