2011-01-19 98 views
1
$query = "SELECT distinct('case'), firstname, lastname 
      FROM cases "; 

为什么不能“呼应”?这是一个数..PHP SELECT distinct不会回显变量吗?

查询的时候就是这样它会响应:

$query = "SELECT case, firstname, lastname 
      FROM cases "; 
+0

它可以帮助你显示您用来'回显'变量的代码。 – 2011-01-19 22:45:58

回答

5

首先,情况不应该是在引号,应该在反引号。其次,DISTINCT总是适用于整行,而不管任何表达式可能具有的括号。在你的查询中,你的括号是误导性的,应该删除。

SELECT DISTINCT `case`, firstname, lastname FROM cases 

如果你想返回一个汇总行针对每个需要使用“GROUP BY`case`” case,但你需要考虑哪些应该为其他值返回。

0

的情况下,不回应,因为你可能会试图呼应$row['case']这不会工作,因为这是回国费尔德不casedistinct(case)

而且你需要避免单引号,要么没有给出报价或使用反引号;否则MySQL将采取情况下为文字字符串

查询,以便改变

SELECT 
    DISTINCT(case), 
    firstname, 
    lastname 
FROM 
    cases 

如果你要访问的情况下$row['case']使用as

SELECT 
    DISTINCT(case) as case, 
    firstname, 
    lastname 
FROM 
    cases