首先,我想声明在编写SQL查询方面仍然是一个新手。我彻底地搜索了关于这个错误的答案,并且我得到了很多答案,但没有一个看起来有帮助,或者我会说我真的不知道如何将解决方案应用于我的答案。SQL MySQL错误(1241)操作数应该包含1列
这是我的挑战,我有一个应用程序表,它存储具有某些唯一列(例如dl_number,parent_id,person_id)的申请人记录。 parent_id使用他/她的第一条记录来记录个人申请人历史记录,并且每个申请人都有唯一的dl_number,但由于某些原因,某些申请人的dl_number不是唯一的,因此需要用改变dl_number(s)。
下面是SQL查询,即得到[sql error(1241)操作数应该包含1列]错误。
SELECT id,application_id,dl_number,surname,firstname,othername,birth_date,status_id,expiry_date,person_id,COUNT(DISTINCT(dl_number,parent_id,birth_date)) AS NumOccurrences
FROM tbl_dl_application
WHERE status_id > 1
GROUP BY dl_number,parent_id,birth_date
HAVING NumOccurrences > 1
请帮助解决这个问题,或者更好的解决方法。
Sample table and expected result
添加一些示例表数据和预期结果! – jarlh
您按2个字段分组并选择了更多。 – Whencesoever
可能导致这个'COUNT(DISTINCT(dl_number,parent_id,birth_date))' –