SQL数据库做一个查询比较
数据库中的数据为 2012-12-11 9:16:22 格式
现在想根据某年某月查询一个月的数据 2013-02 这个为查询条件
SQL语句如何填写这个where条件
access 有个函数是format(time,'yyyy年-mm月') time是字段名字 sql有类似的函数没
SQLçæ¶é´æ ¼å¼æ¯ï¼YYYY-MM-DD HH:NN:SS.sss
å ¶sssæ¯æ¯«ç§ï¼ç±äºè®¡ç®æºå é¨æ¶éæ¶æ¯çé®é¢ï¼SQLæ¶é´æå°åä½ä¸º3毫ç§ã
ä¸è¬SQLæ¶é´æ ¼å¼å¤çï¼å¤§é½éå转æ¢æ ¼å¼è³datetimeæ ¼å¼
ä¾å¦æ¾ç¤ºæ¶å¸¸ç¨å°çï¼
1ãå°2015转æ¢ä¸ºå½å¹´ç第ä¸å¤©ï¼
select cast('2015'+'-1-1' as datetime)è¾åºç»æ为ï¼2015-01-01 00:00:00.000
2ãå°2015-02转æ¢ä¸ºå½å¹´ç第ä¸å¤©ï¼
select cast('2015-02'+'-1' as datetime)è¾åºç»æ为ï¼2015-02-01 00:00:00.000
å ¶å®ä»¥ä¸å¯ä»¥æ»ç»ä¸ºå°å ·æä¸å®æ ¼å¼çå符串转æ¢ä¸ºæ¥æç±»åï¼åªè¦å°å¹´ææ¥è¡¥å ¨ï¼åé¢çæ¶é´ä¼é»è®¤ä¸º0æ¶0å0ç§0毫ç§
能不能用一个函数 直接=2013-02
追答这个最简单啊
不然的话你要convert或者cast v 的datetype 从 datetime 到varchar 比这个麻烦多了
这个不是还要分割日期字符串吗?
追答select * from tabel1
where convert(varchar(7), v, 120)='2013-01'
谢谢你,是对的,刚才有人解答了。。 不过还是要谢谢你