MySql Query在where子句中返回错误的值

Abd*_*man 0 php mysql sql date recordset

使用以下查询,我只需要在月份"02"中显示标有年份"2014"的记录:

SELECT DISTINCT 
 c.sno,
 c.cCode,
 c.caseNumber,
 c.dateOriginalInstitution,
 c.date_remanded,
 c.plaintiff,
 c.respondant 
FROM
  cases c,
  chronologicallists ch 
WHERE (
 (YEAR(dateOriginalInstitution) = '2014' AND MONTH(dateOriginalInstitution) = '02') 
 OR 
 (YEAR(dateOfTransferInstituion) = '2014' AND MONTH(dateOfTransferInstituion) = '02') 
 OR 
 (YEAR(date_restored) = '2014' AND MONTH(date_restored) = '02')
) 
AND c.inTheCourt = '578' AND c.sno = ch.caseSno 
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我在结果集中仍然得到2011年和2012年?

请帮我解决一下这个.

Rav*_*ddy 5

这是因为你的OR情况.

你可能得了year2014在任一dateOfTransferInstituiondate_restored列,但不是在dateOriginalInstitution