SQLÓï¾ä
Ò»table,¿ªÊ¼ºÍ½áÊøÊ±¼ä
start_time || end_time
8:30 || 12:00
12:30 || 17:00
17:30 || 22:30
12£º00--12£º30£¬17£º00--17£º30 ÕâÊÇÐÝϢʱ¼ä£»
ÁíÍâÒ»¸ö±í¼Ç¼ʱ¼ä
curtime
8£º45
8£º55
11£º09
14£º00
16£º00
18£º00
18£º50
19£º00
Ïë¸ù¾ÝµÚÒ»¸ö±íÇó³ö±í¶þµÄʵ¼Ê¹¤×÷ʱ¼ä£¬
±ÈÈ磬 µ½ÁË 14£º00£¬Êµ¼Ê¹¤×÷ʱ¼äΪ14£º00 - 8£º30 - 30'(ÐÝϢʱ¼ä)=3H;
19:00,ʵ¼Ê¹¤×÷ʱ¼äΪ19£º00-8£º30-30'-30¡¯=10.5H;
SQL code:
select b.curtime,
nvl(sum(a1.end_time-a1.start_time),0)+nvl(max(b.curtime-a2.start_time),0) total
from a a1,a a2,b
where b.curtime>a1.end_time(+)
and b.curtime>a2.start_time(+) and
b.curtime<=a2.end_time(+)
group by b.curtime
ʱ¼äÈç¹û²»ÊÇdateÐ͵Ä×Ô¼ºÒª×ªÒ»ÏÂ
SQL code:
SELECT (TO_DATE(curtime,'hh24:mi') - TO_DATE((SELECT TO_CHAR(MIN(TO_DATE(start_time,'hh24:mi')),'hh24:mi') from tb1),'hh24:mi'))*24 -
(CASE WHEN TO_DATE(curtime,'hh24:mi') > TO_DATE((SELECT TO_CHAR(MAX(TO_DATE(end_time,'hh24:mi'
Ïà¹ØÎÊ´ð£º
´ó¼ÒºÃ£¬ÇëÎÊÔÚ±íMÖÐÓÐ×ֶΣºa b c d e
ÎÒÏë²é³öÆäÖÐÂú×ãÏÂÃæÈÎÒâÒ»ÏîµÄÊý¾Ý£¬1.×Ö¶Îa µÄÖµ²»ÊÇ ¡®Êé»ò±Ê»ò±¾¡¯ÖÐÈÎÒ»£¬2.aΪÊéµÄʱºò×Ö¶Îb,cÊÇ¿Õ;3.µ±aֵΪ±ÊµÄʱºòdÊÇ¿Õ;4.µ±aΪ±¾µÄʱºòb,d,e¶¼ÊÇ¿Õ;5.È ......
СµÜÊǸöÐÂÊÖ ÏÖÔÚÓиöÎÊÌâÒ»Ö±²»Äܽâ¾ö
ÀýÈç
procedure produce_proc
@p001 nvarchar(8000),
@p002 nvarchar(8000),
@p003 nvarchar(8000),
& ......
access ÖÐÖ´ÐÐsql updateÓï¾äʱÓÐʱºò³É¹¦ÓÐʱºò²»³É¹¦£¬µ«ÊÇaccessÖв»³ö´íÎóÐÅÏ¢£¬²»ÖªµÀÊÇʲôÔÒò£¬ÓÐÄÄλ´óÏÀÖªµÀ£¬Çë°ïæ°¡
ÌùSQLÓï¾ä£¬¼ì²é±í¡¢×ֶεÄÓÐЧÐÔÉèÖÃ
sql ÔÚ²éѯ·ÖÎöÆ÷ÀïÃæ Ö´ÐкÜÕý³£
ÊÇ ......
ÔÚsqlÖÐʹÓÃoutputºÍ²»Ê¹ÓõÄÇø±ð£¿
ÀýÈ磺
ALTER PROCEDURE [dbo].[sp_1]
@SYS_LNNO varchar(20),
@SYS_CALLER varchar(20),
@SYS_ORGANIZE varchar(10), ......