当我将DISTINCT
放在我的操作员列上时,我的查询停止工作。当我删除DISTINCT
我的查询工作正常。使用Distinct时查询失败
$resource= $con->query("SELECT date,factory,DISTINCT(operator)as operator,FROM
Myfactories where factory='$login_session' AND Year='2017' ");
当我将DISTINCT
放在我的操作员列上时,我的查询停止工作。当我删除DISTINCT
我的查询工作正常。使用Distinct时查询失败
$resource= $con->query("SELECT date,factory,DISTINCT(operator)as operator,FROM
Myfactories where factory='$login_session' AND Year='2017' ");
如果直接在你的数据库运行查询或使用mysqli_error(),你会被提供了:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DISTINCT(operator) as operator, FROM Myfactories
这将明确确认你或多或少知道什么。
那你自然会看看MySQL文档,看看有什么规格DISTINCT
具有访问:https://dev.mysql.com/doc/refman/5.7/en/select.html
14.2.9 SELECT Syntax
[ALL | DISTINCT | DISTINCTROW ] [HIGH_PRIORITY] [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT] [SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS] select_expr [, select_expr ...] [FROM table_references
这意味着所有这些括号的关键字必须在任何列表达式之前。
,关于多个列说话具体地约SELECT DISTINCT
附加教程资源包括:
这里是解释如何在多列使用DISTINCT
很多很多的YouTube视频之一:https://www.youtube.com/watch?v=-C45IpqUbUA
而如果这些非StackOverflow的资源仍然没有做到这一点。 Stackoverflow提供了许多重复问题,在某些方面比网络上的其他任何问题都更好。
GROUP BY
优化)GROUP BY
优化)在正确调整DISTINCT关键字之后,您将会看到另一个错误:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM `MyFactories`
此错字的修正将是仅仅取出,
的factory
柱和FROM
关键字之间。
由于对SO推荐其他页面,你应该使用你的SQL语句如下:
SELECT `date`,`factory`,`operator` FROM `Myfactories` WHERE `factory`='$login_session' AND `Year`='2017' GROUP BY `date`,`factory`,`operator`
尝试这样
$change="where factory='$login_session' AND Year='2017'";
$resource= $con->query("SELECT DISTINCT operator, date, factory FROM Myfactories $change")
仅有代码的答案对教育没有多大帮助。如果你打算挖掘我的评论信息,那么至少应该在工作中解释你的答案。 (我的怀疑是这个答案不会产生所需的结果集) – mickmackusa
谢谢你们的工作,我忽略了Distinct必须先来 – user3548161
DISTINCT必须是第一位的,它不需要括号。您可能希望查看GROUP BY,具体取决于您尝试完成的内容。 ',FROM'看起来也很麻烦。 – mickmackusa
可能的重复http://stackoverflow.com/questions/54418/how-do-i-or-can-i-select-distinct-on-multiplecolumn – mickmackusa
这个问题显示明显缺乏努力来错误检查,研究和自我解决。它应该像打印错误一样重复或脱离主题。 – mickmackusa