php – Mysql – 找到重复的值然后只返回最新值然后如果它返回某
发布时间:2020-12-13 16:57:19 所属栏目:PHP教程 来源:网络整理
导读:我有 Tablenameid coid name test passfail testdateVALUES1 1 Chris mod1 fail 2015-05-202 1 Chris mod1 pass 2015-05-253 2 Patrick mod1 fail 2015-06-104 3 James mod1 2015-12-215 4 Agnes mod1 cancelled 2015-07-016 5 Freya mod1 pass 2015-07-017
我有
Tablename id coid name test passfail testdate VALUES 1 1 Chris mod1 fail 2015-05-20 2 1 Chris mod1 pass 2015-05-25 3 2 Patrick mod1 fail 2015-06-10 4 3 James mod1 2015-12-21 5 4 Agnes mod1 cancelled 2015-07-01 6 5 Freya mod1 pass 2015-07-01 7 5 Freya mod2 pass 2015-07-05 它列出了谁做了什么测试以及何时,以及是否通过了测试. 如果我使用 SELECT * FROM `tablename` WHERE `test` = 'mod1' AND `passfail` != 'pass' 克里斯在结果中是因为他也失败了mod1,但我需要能够忽略失败,因为他现在已经过去了. 我追求的结果是…… 3 2 Patrick mod1 fail 2015-06-10 4 3 James mod1 2015-12-21 5 4 Agnes mod1 cancelled 2015-07-01 该coid是联系人ID,以防万一我得到两个同名的人. 如果我能找到已经完成mod1的重复coid,那么请选择最近的一个日期,然后检查它是否是通过.我认为这应该给我我需要的结果,我不知道怎么做但是请帮忙 我在sqlfiddle上一直在尝试各种各样的事情 解决方法
试试这个…
SELECT * FROM table_name WHERE coid NOT IN ( SELECT coid FROM same_table_name WHERE test = 'mod1' AND passfail = 'pass' ); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |