Mysql MariaDB SELECT查询未返回正确的结果

Mysql MariaDB SELECT查询未返回正确的结果,mysql,sql,mariadb,Mysql,Sql,Mariadb,当我运行以下查询时,我遇到了一个问题,即将结果从MariaDB从属服务器上的表返回到MySQL DB: SELECT * FROM t WHERE colZ = 'GM' AND hour(colTime) = 18 AND colDate = 20170306; 我得到一个结果,显示10行符合条件 但当我跑步时: SELECT * FROM t WHERE colZ IN ('GM','NS') AND hour(colTime) = 18 AND colDate = 20170306;

当我运行以下查询时,我遇到了一个问题,即将结果从MariaDB从属服务器上的表返回到MySQL DB:

SELECT * FROM t WHERE colZ = 'GM' AND hour(colTime) = 18 AND colDate = 20170306;
我得到一个结果,显示10行符合条件

但当我跑步时:

SELECT * FROM t WHERE colZ IN ('GM','NS') AND hour(colTime) = 18 AND colDate = 20170306;
我得到一个结果,其中17行包含
colZ
中的
GM
,然后期望任何匹配的
Y
值(如果有)

所以问题是:为什么这7条记录在初始查询中没有返回?我已尝试将第一个查询更改为
colZ IN('GM')
,将第二个查询更改为
colZ='GM'或colZ='NS'
,但两者仍然返回相同的结果

第二个查询中显示的另外7行与第一个查询中显示的行相比没有明显的差异


更奇怪的是,当我在主mySQL数据库上运行相同的查询时,它们都会像预期的那样返回17行。

dateas integer?!?吓人。向我们展示示例表数据、当前结果和预期结果-以及格式良好的文本。@jarlh我已经更新了问题以包括图像,注意PK值绝对是唯一和正确的,我只是删除了它们并更改了列名。该日期为中的日期格式table@jarlh这并不总是可怕的,如果你运行dwh,这是正常的。。。然而,你必须知道自己在做什么以及为什么,否则是的,这很可怕;)@公民愤怒,请粘贴
SHOW CREATE TABLE t的输出
以t显示索引
EXPLAIN EXTENDED SELECT*FROM t,其中colZ='GM'和hour(colTime)=18,colDate=20170306
解释扩展选择*从t开始,其中colZ IN('GM','NS')和hour(colTime)=18,colDate=20170306日期为整数?!?吓人。向我们展示示例表数据、当前结果和预期结果-以及格式良好的文本。@jarlh我已经更新了问题以包括图像,注意PK值绝对是唯一和正确的,我只是删除了它们并更改了列名。该日期为中的日期格式table@jarlh这并不总是可怕的,如果你运行dwh,这是正常的。。。然而,你必须知道自己在做什么以及为什么,否则是的,这很可怕;)@公民愤怒,请粘贴
SHOW CREATE TABLE t的输出
以t显示索引
EXPLAIN EXTENDED SELECT*FROM t,其中colZ='GM'和hour(colTime)=18,colDate=20170306
解释扩展选择*从t开始,其中colZ IN('GM','NS')和hour(colTime)=18,colDate=20170306