我需要帮助。我有一个显示产品类型标题的数据库。
到目前为止我的代码是:
$query = mysql_query("SELECT type FROM certs ORDER by type") or die("Could not execute query");
while($row = mysql_fetch_array($query) )
{
$product .= "<h1>".$row["type"]."</h1>";
}
echo($product);
返回
<h1>MR001</h1>
<h1>MR001</h1>
<h1>MR002</h1>
<h1>MR003</h1>
<h1>MR003</h1>
<h1>MR004</h1>
<h1>MR004</h1>
<h1>MR004</h1>
等,但我需要它只返回一次相同的值?
像
<h1>MR001</h1>
<h1>MR002</h1>
<h1>MR003</h1>
<h1>MR004</h1>
STUCK.COM帮助!!!
答案 0 :(得分:6)
将您的查询更改为使用DISTINCT
,这只会返回唯一的行:
mysql_query("SELECT DISTINCT type FROM certs ORDER by type")
为方便使用,您的整个更正代码如下:
$query = mysql_query("SELECT DISTINCT type FROM certs ORDER by type") or die("Could not execute query");
while($row = mysql_fetch_array($query) )
{
$product .= "<h1>".$row["type"]."</h1>";
}
echo($product);
答案 1 :(得分:6)
在SQL查询中使用 DISTINCT .. 试试这个:
$query = mysql_query("SELECT DISTINCT type FROM certs ORDER by type") or die("Could not execute query");
while($row = mysql_fetch_array($query) )
{
$product .= "<h1>".$row["type"]."</h1>";
}
答案 2 :(得分:4)
答案 3 :(得分:2)
我认为你想使用SELECT DISTINCT type
。 。 。
答案 4 :(得分:2)
尝试DISTINCT
:
"SELECT DISTINCT type FROM certs ORDER by type"
答案 5 :(得分:2)
看看GROUP BY以及DISTINCT运算符。
对于您的具体示例:
$query = mysql_query("SELECT DISTINCT type FROM certs ORDER by type") or die("Could not execute query");
答案 6 :(得分:2)
使用分组
SELECT type FROM certs GROUP BY type
(bit offtopic) - 最好在单独的表中使用类型定义(例如,不在证书中,但在自己的表中) - 并通过外键链接(例如,type_id而不是类型 - 对于MR001,它将为1,2对于MR002等)
要列出具有类型名称的证书,请使用JOIN
答案 7 :(得分:1)
您正在寻找SELECT DISTINCT
。您可能想要查看完整的MySQL syntax for Select。