SQL °´Ô²éѯ
ÏîÄ¿ÖÐÐèÒª¸ù¾Ý¿Î¼þÃû³Æ°´ÔÂͳ¼Æ³ö·ÃÎʵÄÇé¿ö£¬µÚÒ»´ÎÎÒ²ÉÓÃÁË×îÍÁµÄÒ»ÖÖ°ì·¨£¬Ê¹ÓÃÑ»·£¬¸øsql´«µÝÄêÔÂÁ½¸ö²ÎÊý£¬
for(var y=2009;y<=2010;y++){
for(var m=1;m<=12;m++){
// todo : SQL ²éѯ
}
}
ÕâÑù£¬Í³¼Æ2009Äêµ½2010ÄêµÄÔ±¨±í£¬¾ÍÐèҪѻ·2*12 ´Î£¬Èç¹ûÊý¾Ý¿âÖÐijÔ²¢Î´ÓÐÊý¾Ý£¬ÄÇô¾ÍµÈÓÚÊǰװ×Õ¼Óôø¿íÇëÇó·þÎñÆ÷ÁË¡£
¾¹ýlinchunµÄµã²¦£¬½áºÏ±ù¸ç֮ǰµÄ²éѯ£¬Ê¹ÓÃConvert ºÍDatepart ¼´¿ÉʵÏÖÕâÖÖ²éѯ£¬È»ºóÔÙÔÚǰ̨ͨ¹ýJavaScript´¦ÀíÊý¾Ý¡£
SELECT a.[ID]
,a.[Name]
,fna(a.[ID], CONVERT([datetime],CONVERT([varchar](8),b.[Timestamp],(102))+'01',0) ) as UserCount ,(CONVERT([datetime],CONVERT([varchar](8),b.[Timestamp],(102))+'01',0)) as ReportDate
from [dbo].[lcms_CourseWare] a
inner join [dbo].[lcms_SessionTime] b
on a.[ID] = b.[CourseWareID]
where [State]=1
and [DelFlag]=0
group by (CONVERT([datetime],CONVERT([varchar](8),b.[Timestamp],(102))+'01',0))
,a.[ID],a.[Name]
ÔÚfunction ÖУ¬½ÓÊÕʱ¼ä²ÎÊý£º
CREATE FUNCTION fna(
@CourseWareID varchar(32)
, @ReportDate datetime
)
RETURNS bigint
AS
BEGIN
RETURN (
SELECT COUNT(distinct [UserID])
from [dbo].[lcms_SessionTime]
WHERE CourseWareID = @CourseWareID
and year([Timestamp])=DATEPART(YEAR,@ReportDate)
and month([Timestamp])=DATEPART(MONTH,@ReportDate)
)
END
GO
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER OFF
GO
Ïà¹ØÎĵµ£º
µ±SQLServerµÄϵͳÈÕÖ¾¹ý´ó£¬¾Í»áÒýÆðSQLServer·þÎñÆ÷ÎÞ·¨Æô¶¯µÈһϵÁÐÎÊÌâ¡£½ñÌìÎÒÓöµ½ÁËÕâ¸öÎÊÌ⣬ÔÚÍøÉÏËÑË÷ÁËһϣ¬½â¾ö·½·¨ÊÇɾ³ý¾Í¿ÉÒÔÁË£¬¿ÉÊǵ±Ç°µÄErrorLogÕýÔÚ±»SQLʹÓÃÎÞ·¨É¾³ý°¡£¬ÒªÉ¾³ýÖ»ÄÜÍ£Ö¹SQL·þÎñÆ÷£¬ÄѵÀ¾ÍûÓбðµÃ°ì·¨ÁËÂð£¿
»Ø´ðÊǿ϶¨µÄ£ºÊ¹ÓÃÒÔÏ´洢¹ý³Ì£º ......
Õ⼸ÌìÒ»Ö±±»ÖÐÎÄÂÒÂëÎÊÌâÀ§ÈÅ£¬ÖÐÎÄÊý¾Ý²åÈëµ½My SqlÖкÜÕý³££¬ÔÚCommand client lineÖÐÒ²ÄÜÕý³£ÏÔʾ£¬¿É´ÓÊý¾Ý¿âÖжÁµ½JSPÒ³ÃæÉÏʱ£¬¾Í±ä³É“»ðÐÇÎÄ”ÁË¡£
¡¡¡¡ÓÚÊÇÉÏÍø²éѯ£¬Ò²¿´µ½ºÃ¶à·½·¨£ºÓеÄ˵°Ñmy.iniÖÐdefault-character-set=latin1¸ÄΪdefault-character-set=utf8,ÓÐ ......
ǰ²»¾Ã¿´µ½Í¬ÊÂÔÚÓÃSql Prompt3.9£¬¾õµÃÂù·½±ãµÄ¡£¸øÎÒÃÇд³ÌÐòÄÜʡϲ»ÉÙÁ¦Æø¡£·½±ã£¬sql´úÂë¿´ÆðÀ´ÓÖ¼ò½é¡£ÖµµÃÍÆ¼ö¡£http://www.red-gate.com/ÕâÊÇËüµÄ¹ÙÍø£¬ÊÇÒ»¿îÊշѵÄÈí¼þ¡£Õýʽ°æ±¾ÏÂÔØÏÂÀ´Ö»ÄÜʹÓÃ14Ìì¡£·Ï»°²»ËµÁË£¬ÏÈ¿´ÏÂЧ¹ûͼ£º
»¹²»´í°¡¡£
½ÓÏÂÀ´½éÉÜÏÂÆÆ½âµÄ·½·¨£¬Ïȵ½¹ÙÍø°Ñ×îаæ(ÏÖÔÚÒѾÊÇ3.9ÁË)ÏÂÏÂÀ ......
Oracle SQLÐÔÄÜÓÅ»¯¼¼ÇÉ´ó×ܽá ÊÕ²Ø
£¨1£©Ñ¡Ôñ×îÓÐЧÂʵıíÃû˳Ðò(Ö»ÔÚ»ùÓÚ¹æÔòµÄÓÅ»¯Æ÷ÖÐÓÐЧ)£º
OracleµÄ½âÎöÆ÷°´ÕÕ´ÓÓÒµ½×óµÄ˳Ðò´¦Àífrom×Ó¾äÖеıíÃû£¬from×Ó¾äÖÐдÔÚ×îºóµÄ±í(»ù´¡±í driving table)½«±»×îÏÈ´¦Àí£¬ÔÚfrom×Ó¾äÖаüº¬¶à¸ö±íµÄÇé¿öÏÂ,Äã±ØÐëÑ¡Ôñ¼Ç¼ÌõÊý×îÉٵıí×÷Ϊ»ù´¡±í¡£Èç¹ûÓÐ3¸öÒÔ ......
ÐÐÁÐתÖõÄSQLÓï¾ä
ÁíÒ»ÖÖÐÐÁÐתÖà -- ¶¯Ì¬ sql ½»²æ±í
===========================================================
×÷Õß: wxy0327(http://wxy0327.itpub.net)
·¢±íÓÚ: 2006.05.10 09:11
·ÖÀà:
Oracle
³ö´¦: http://wxy0327.itpub.net/post/16888/88075
-------------------------- ......