如何查询一年,一月,一周 不存在的表记录
解决方案 »
- MySQL正则查询,在线求助!!!
- mysql 的in 比较慢 想知道有什么方法可以优化
- 关于字符编码的问题,真心求解。
- 有关分布式存储的问题
- starting Mysql.manager of pid-file without updating.......
- C 语言获取某时刻数据库中所有记录的镜像
- 一个java 程序连接不了mysql问题
- 我是初学者,使用mysql时候总是出现command denied to user
- 请问有没有在WINDOWS下的mysqlgui管理mysql的程序呢?
- MySQL查找父子节点
- mysql model index field error错误 在线等 急
- mysql和mssql数据的实时同步问题...
建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
参考一下这个贴子的提问方式http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html
1. 你的 create table xxx .. 语句
2. 你的 insert into xxx ... 语句
3. 结果是什么样,(并给以简单的算法描述)
4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。
(
`ID` int(10) NOT NULL auto_increment,
`SID` varchar(20) default '0', //卡号ID
`DateTime` varchar(10) default NULL, //时间
) ENGINE=MyISAM DEFAULT CHARSET=utf8create table personinfo
(
`ID` int(10) NOT NULL auto_increment,
`Sid` varchar(50) NOT NULL default '0', //卡号ID
`Sname` varchar(50) default NULL,
) ENGINE=MyISAM DEFAULT CHARSET=utf8
需要查询一年没有在这表里的记录
SELECT u.rfidno from personinfo as p left join(SELECT SID FROM cardtime where DateTime like '2012%' ) as c on p.Sid=c.SID where c.SID is null 这个只能查一次,并且过滤掉了重复的,不知道怎么弄了。
卡号 姓名 时间(这个时间是根据没有在cardtime表里没有显示的时间)
001 张三 2012-05-16
002 李四 2012-05-16
001 张三 2012-05-17
001 张三 2012-05-18
001 张三 2012-05-19
where not exists (select 1 from cardtime where SID=p.SID and DateTime>'2012');
是啊,不是一个SID哦,是所有SID都要列出来哦
先生成一个表,只有一个日期字段
然后跟你现在的这张表做左连接就行了
然后没打卡的那天就会是一个日期加一堆NULL