如何仅使用PHP和MYSQL从列中检索唯一值?从一列中选择不同的值
这里的表1的内容:
id value
_____________________
1 Max Power
2 Homer Simpson
3 Max Power
4 Lisa Simpson
5 Lisa Simpson
所以,很显然,我希望这些结果:
- Max Power
- Homer Simpson
- Lisa Simpson
,但我仍然得到:
- Max Power
- Homer Simpson
- Max Power
- Lisa Simpson
- Lisa Simpson
的SQL语句我试过的如下:
SELECT DISTINCT value FROM column1
和
SELECT * FROM column1 GROUP BY value
显然这应该工作。所以这里是我的完整的SQL语句,以防万一有什么可疑的东西:
<?php
$dblink = mysql_connect(‘host’, ‘username’, ‘password’) or die(mysql_error());
mysql_select_db(‘database_name);
$rs = mysql_query('SELECT DISTINCT value FROM table1, $dblink);
while($row = mysql_fetch_array($rs)) {
$rowValue = $row['value'];
$explodeRowValue = (explode("||",$rowValue));
foreach ($explodeRowValue as $value_name) {
$data[] = array(
'key' => $value_name,
'value' => $value_name
);
}
}
echo json_encode($data);
flush();
那么,你们觉得呢?这让我疯狂!
萨
你的代码中有'的mysql_query错误(“SELECT DISTINCT值FROM表1,$ DBLINK);'不要有收盘配额。 –
你的DISTINCT查询应该可以正常工作(即使你指定了DISTINCT,你也会得到一个“随机”的ID,而不是一个稳定的结果)。也许,字符串有些不同,可能是空格(正如阿齐兹的答案所暗示的),但可能存在某种编码问题。 –
@ Clockwork-Muse Whitespace在这种情况下不是问题。今晚我会继续绞尽脑汁。 –