SQLʱ¼ä±È½Ï dateDiff·½·¨Ê¹ÓÃ
DateDiff
¡¡¡¡DateDiff: SQL serverº¯Êý
¡¡¡¡·µ»Ø Variant (Long) µÄÖµ£¬±íʾÁ½¸öÖ¸¶¨ÈÕÆÚ¼äµÄʱ¼ä¼ä¸ôÊýÄ¿¡£
¡¡¡¡Óï·¨
¡¡¡¡DateDiff(interval, date1, date2[, firstdayofweek[, firstweekofyear]])
¡¡¡¡DateDiff º¯ÊýÓï·¨ÖÐÓÐÏÂÁÐÃüÃû²ÎÊý£º
¡¡¡¡²¿·Ö ÃèÊö
¡¡¡¡interval ±ØÒª¡£×Ö·û´®±í´ïʽ£¬±íʾÓÃÀ´¼ÆËãdate1 ºÍ date2 µÄʱ¼ä²îµÄʱ¼ä¼ä¸ô
¡¡¡¡Date1¡õdate2 ±ØÒª£»Variant (Date)¡£¼ÆËãÖÐÒªÓõ½µÄÁ½¸öÈÕÆÚ¡£
¡¡¡¡Firstdayofweek ¿ÉÑ¡¡£Ö¸¶¨Ò»¸öÐÇÆÚµÄµÚÒ»ÌìµÄ³£Êý¡£Èç¹ûδÓèÖ¸¶¨£¬ÔòÒÔÐÇÆÚÈÕΪµÚÒ»Ìì¡£
¡¡¡¡firstweekofyear ¿ÉÑ¡¡£Ö¸¶¨Ò»ÄêµÄµÚÒ»Öܵij£Êý¡£Èç¹ûδÓèÖ¸¶¨£¬ÔòÒÔ°üº¬ 1 Ô 1 ÈÕµÄÐÇÆÚΪµÚÒ»ÖÜ¡£
¡¡¡¡ÉèÖÃ
¡¡¡¡interval ²ÎÊýµÄÉ趨ֵÈçÏ£º
¡¡¡¡ÉèÖà ÃèÊö
¡¡¡¡yyyy Äê
¡¡¡¡q ¼¾
¡¡¡¡m ÔÂ
¡¡¡¡y Ò»ÄêµÄÈÕÊý
¡¡¡¡d ÈÕ
¡¡¡¡w Ò»ÖܵÄÈÕÊý
¡¡¡¡ww ÖÜ
¡¡¡¡hh ʱ
¡¡¡¡n ·ÖÖÓ
¡¡¡¡s Ãë
¡¡¡¡firstdayofweek ²ÎÊýµÄÉ趨ֵÈçÏ£º
¡¡¡¡³£Êý Öµ ÃèÊö
¡¡¡¡vbUseSystem 0 ʹÓà NLS API ÉèÖá£
¡¡¡¡vbSunday 1 ÐÇÆÚÈÕ£¨È±Ê¡Öµ£©
¡¡¡¡vbMonday 2 ÐÇÆÚÒ»
¡¡¡¡vbTuesday 3 ÐÇÆÚ¶þ
¡¡¡¡vbWednesday 4 ÐÇÆÚÈý
¡¡¡¡vbThursday 5 ÐÇÆÚËÄ
¡¡¡¡vbFriday 6 ÐÇÆÚÎå
¡¡¡¡vbSaturday 7 ÐÇÆÚÁù
¡¡¡¡³£Êý Öµ ÃèÊö
¡¡¡¡vbUseSystem 0 Óà NLS API ÉèÖá£
¡¡¡¡vbFirstJan1 1 ´Ó°üº¬ 1 Ô 1 ÈÕµÄÐÇÆÚ¿ªÊ¼£¨È±Ê¡Öµ£©¡£
¡¡¡¡vbFirstFourDays 2 ´ÓµÚÒ»¸öÆä´ó°ë¸öÐÇÆÚÔÚеÄÒ»ÄêµÄÒ»ÖÜ¿ªÊ¼¡£
¡¡¡¡vbFirstFullWeek 3 ´ÓµÚÒ»¸öÎÞ¿çÄê¶ÈµÄÐÇÆÚ¿ªÊ¼¡£
¡¡¡¡ËµÃ÷
¡¡¡¡DateDiff º¯Êý¿ÉÓÃÀ´¾ö¶¨Á½¸öÈÕÆÚÖ®¼äËùÖ¸¶¨µÄʱ¼ä¼ä¸ôÊýÄ¿¡£ÀýÈ磬¿ÉÒÔʹÓà DateDiff À´¼ÆËãÁ½¸öÈÕÆÚÖ®¼äÏà¸ô¼¸ÈÕ£¬»ò¼ÆËã´Ó½ñÌìÆðµ½Äêµ×»¹ÓжàÉÙ¸öÐÇÆÚ¡£
¡¡¡¡ÎªÁ˼ÆËã date1 Óë date2 Ïà²îµÄÈÕÊý£¬¿ÉÒÔʹÓÓһÄêµÄÈÕÊý”(y) »ò“ÈÕ”(d)¡£µ± interval ÊǓһÖܵÄÈÕÊý”(w) ʱ£¬DateDiff ·µ»ØÁ½ÈÕÆÚ¼äµÄÖÜÊý¡£Èç¹û date1 ÊÇÐÇÆÚÒ»£¬DateDiff ¼ÆËãµ½ date2 ΪֹµÄÐÇÆÚÒ»µÄ¸öÊý¡£Õâ¸öÊý°üº¬ date2 µ«²»°üº¬ date1¡£²»¹ý£¬Èç¹û interval ÊÇ“ÖÜ”(ww)£¬Ôò DateDiff º¯Êý·µ»ØÁ½ÈÕÆÚ¼äµÄ“ÈÕÀúÖÜ”Êý¡£ÓɼÆËã date1 Óë date2 Ö®¼äÐÇÆÚÈյĸöÊý¶øµÃ¡£Èç¹û date2 ¸ÕºÃÊÇÐÇÆÚÈÕ£¬Ôò date2 Ò²»á±»¼Ó½ø DateDiff µÄ¼ÆÊý½á¹ûÖУ»µ«²»ÂÛ date1 ÊÇ·ñΪÐÇÆÚÈÕ£¬¶¼²»½«ËüËã½øÈ¥¡£
¡¡¡¡Èç¹û date1
Ïà¹ØÎĵµ£º
(1)¶þ½øÖÆÊý¾ÝÀàÐÍ
¡¡¡¡¶þ½øÖÆÊý¾Ý°üÀ¨ Binary¡¢Varbinary ºÍ Image
¡¡¡¡Binary
Êý¾ÝÀàÐͼȿÉÒÔÊǹ̶¨³¤¶ÈµÄ(Binary),Ò²¿ÉÒÔÊDZ䳤¶ÈµÄ¡£
¡¡¡¡Binary[(n)] ÊÇ n λ¹Ì¶¨µÄ¶þ½øÖÆÊý¾Ý¡£ÆäÖУ¬n
µÄȡֵ·¶Î§ÊÇ´Ó 1 µ½ 8000¡£Æä´æ´¢ñ¿µÄ´óСÊÇ n + 4 ¸ö×Ö½Ú¡£
¡¡¡¡Varbinary[(n)] ÊÇ n
λ±ä³¤¶ÈµÄ¶þ½øÖÆÊý¾Ý¡£ÆäÖУ ......
ÔÚSQL ServerµÄÐÔÄܵ÷ÓÅÖУ¬ÓÐÒ»¸ö²»¿É±ÈÄâµÄÎÊÌ⣺ÄǾÍÊÇÈçºÎÔÚÒ»¶ÎÐèÒª³¤Ê±¼äµÄ´úÂë»ò±»Æµ·±µ÷ÓõĴúÂëÖд¦ÀíÁÙʱÊý¾Ý¼¯?±í±äÁ¿ºÍÁÙʱ±íÊÇÁ½ÖÖÑ¡Ôñ¡£
¡¡¡¡ÔÚSQL ServerµÄÐÔÄܵ÷ÓÅÖУ¬ÓÐÒ»¸ö²»¿É±ÈÄâµÄÎÊÌ⣺ÄǾÍÊÇÈçºÎÔÚÒ»¶ÎÐèÒª³¤Ê±¼äµÄ´úÂë»ò±»Æµ·±µ÷ÓõĴúÂëÖд¦ÀíÁÙʱÊý¾Ý¼¯?±í±äÁ¿ºÍÁÙʱ±íÊÇÁ½ÖÖÑ¡Ôñ¡£¼ÇµÃÔÚ¸øÒ»¼Ò ......
¾ÛºÏº¯Êý
MAX(×Ö¶Î)
Çóij×Ö¶ÎÖеÄ×î´óÖµ
MIN(×Ö¶Î)
Çóij×Ö¶ÎÖеÄ×îСֵ
AVG(×Ö¶Î)
Çóij×Ö¶ÎÖÐµÄÆ½¾ùÖµ
SUM(×Ö¶Î)
Çóij×Ö¶ÎÖеÄ×ܺÍ
COUNT(×Ö¶Î)
ͳ¼ÆÄ³×ֶηǿռͼÊý
COUNT
......
RANK ( ) OVER ( [query_partition_clause] order_by_clause )
DENSE_RANK ( ) OVER ( [query_partition_clause] order_by_clause )
¿ÉʵÏÖ°´Ö¸¶¨µÄ×ֶηÖ×éÅÅÐò£¬¶ÔÓÚÏàͬ·Ö×é×ֶεĽá¹û¼¯½øÐÐÅÅÐò,
ÆäÖÐPARTITION BY Ϊ·Ö×é×ֶΣ¬ORDER BY Ö¸¶¨ÅÅÐò×Ö¶Î
over²»Äܵ¥¶ÀʹÓã¬ÒªºÍ·ÖÎöº¯Êý£ºrank(),dense_rank(),row_n ......
ÔÒò·ÖÎö:
SERVERPROPERTY º¯ÊýµÄ ServerName ÊôÐÔÓë@@SERVERNAME ·µ»ØÏàËÆµÄÐÅÏ¢¡£ServerName ÊôÐÔÌṩWindows ·þÎñÆ÷ºÍʵÀýÃû³Æ£¬Á½Õß¹²Í¬¹¹³ÉΨһµÄ·þÎñÆ÷ʵÀý£»@@SERVERNAME Ìṩµ±Ç°ÅäÖõı¾µØ·þÎñÆ÷Ãû³Æ¡£
Èç¹û°²×°Ê±Î´¸ü¸ÄĬÈÏ·þÎñÆ÷Ãû³Æ£¬Ôò ServerName ÊôÐÔºÍ @@SERVERNAME ·µ»ØÏàͬµÄÐÅÏ¢¡£Èç¹ûÔÚ°²×°Ê±Òѽ«±¾µ ......