2014-01-14 82 views
0

我有这个疑问显示GET SQL查询

$q = "SELECT DISTINCT (`title`) AS title, author, copyright, section, dds FROM bookhistory GROUP BY acc_number, title, author, copyright, section, dds"; 

如果我想显示表中的所有数据它完美的罚款。但数据中的一个,我这个附加:

echo "<td>".$row['section']."</td>"; 
echo "<td>".$row['dds']."</td>"; 
echo "<td><a href='../php/borrowersname.php?acc_number=".$row['acc_number']."'>".$row['title']."</a></td>"; //thi one 
echo "<td>".$row['author']."</td>"; 
echo "<td>".$row['copyright']."</td>"; 

在我borrowersname.php,结果并没有真正得到帐号:

borrowersname.php?acc_number= 

它是空白。这是为什么?预先感谢您进行一些额外的学习。

+2

在查询中未选择“acc_number” – 2014-01-14 20:20:24

+0

好吧,那么我必须如此做出我的查询吗? SELECT DISTINCT('title','acc_number')AS标题,.... – Cecil

+0

真的,你不应该有'DISTINCT(title)AS title',只是做'SELECT DISTINCT'会得到你想要的。如在',SELECT DISTINCT标题,作者,acc_number,...' – Andrew

回答

0

在您的SQL查询,你没有选择acc_number柱:

$q = "SELECT DISTINCT (`title`) AS title, author, copyright, section, dds ... 

正因为如此,$row['acc_number']将不存在(除非你以某种方式填充它,否则,但这是值得怀疑)。

更新查询以下(假设acc_number是一个有效的列),它应该工作:

$q = "SELECT title, acc_number, author, copyright, section, dds FROM bookhistory GROUP BY acc_number, title, author, copyright, section, dds"; 

注:我删除了DISTINCT因为你反正分组结果。

+0

完美!5分钟才能接受。 – Cecil