SQLµÄǰÊÀ½ñÉú
ǰÑÔÀÎÒ̸µ½ÁËһЩFORTRAN³ÌÐòÔ±ºÍÒ»ÃûLISP³ÌÐòÔ±µÄÊ£¬Ç°ÕßÖ»»áʹÓÃÑ»·À´½â¾öÎÊÌ⣬ºóÕßÖ»»áʹÓõݹ鷽ʽ½â¾öÎÊÌâ¡£ÕâÖÖÇé¿ö²¢²»
ÉÙ¼û£¬ÒòΪÈËÃǶ¼Ï²»¶Ê¹ÓÃ×Ô¼ºÁ˽âµÄ¹¤¾ß¡£ÏÂÃæ½²Ò»¸öЦ»°£¬²»ÊÇÕæÊ£ºÓÐÈ˸øÒ»¸öÊýѧ¼Ò¡¢Ò»¸öÎïÀíѧ¼ÒºÍÒ»¸öÊý¾Ý¿â³ÌÐòÔ±¸÷·¢ÁËÒ»¸öÏðƤÇò£¬²¢ÇÒÈÃËûÃÇÈ·
¶¨ÇòµÄÌå»ý¡£
Êýѧ¼ÒÈÏÕæµØ²âÁ¿ÁËÖ±¾¶£¬È»ºóÓÃÇòÌå»ý¹«Ê½¼ÆËã³öÁËÇòµÄÌå»ý£¬»òÕßÈÏΪÕâ¸öÇò²»ºÜÔ²£¬¾ÍÓÃÈýÖØ»ý·Ö¼ÆËãÁËÇòµÄÌå»ý¡£
ÎïÀíѧ¼ÒÔòÔÚÒ»¸ö´óÉÕ±ÖнÓÂúÁËË®£¬°ÑÇò·ÅÈëË®ÖУ¬²âÁ¿³öÅÅË®Á¿¡£Ëû²¢²»¹ØÐÄÕâ¸öÇòÊÇʲôÐÎ×´¡£
Êý¾Ý¿â³ÌÐòÔ±ÄØ£¬Ëûµ½ÏðƤÇòÉú²úÉ̵ÄÔÚÏßÊý¾Ý¿âÀï²éÁËÕâ¸öÇòµÄÐͺźͲúÆ·ÐòÁкţ¬¸ù±¾²»¹ØÐÄÕâÊDz»ÊÇÇò¡£Ëû»ñµÃÁËÕâ¸öÇòµÄÖÆÔ칫²î¡¢Éè¼ÆÐÎ×´ºÍ³ß´çÒÔ¼°ÆäËûÐí¶àÓëÕû¸öÏðƤÇòÉú²ú¹ý³ÌÓйصIJÎÊý¡£
Õâ¸ö¹ÊÊÂ˵Ã÷£ºÊýѧ¼ÒÖªµÀÈçºÎ¼ÆË㣬ÎïÀíѧ¼ÒÖªµÀÈçºÎ²âÁ¿£¬¶øÊý¾Ý¿â¼¼ÊõÈËÔ±ÖªµÀÈçºÎ²éÕÒÊý¾Ý¡£Ã¿¸öÈ˶¼²ÉÓÃ×Ô¼ºµÄ¹¤¾ßÀ´½â¾öÎÊÌâ¡£
ÏÖÔÚÎÒÃǰÑÎÊÌâÀ©Õ¹µ½²Ö¿âÖгÉǧÉÏÍò¸öÏðƤÇò¡£ Êýѧ¼ÒºÍÎïÀíѧ¼ÒÒò´Ë»á»¨·Ñ´óÁ¿µÄÊÖ¹¤ÀͶ¯Íê³ÉÈÎÎñ£¬¶øÊý¾Ý¿â¼¼ÊõÔ±Ö»ÒªÏÂÔØÒ»Ð©ÐÅÏ¢£¬¾ÍÄܹ»µÃ³öÏðƤÇòµÄ¹¤Òµ±ê×¼£¨¼ÙÉèÓÐÕâÖÖ±ê×¼£©ÒÔ¼°Ï꾡µÃ¿ÉÒÔÓÃÓÚ·¨Í¥±çÂÛµÄÎĵµ¡£
²»Í¬µÄ±à³ÌÄ£ÐÍ
×ÔÎÒÍêÉÆµÄ¹ý³Ì¾ÍÊÇÔÚѧϰÐÂ֪ʶµÄͬʱ£¬Íü¼ÇÀϵÄϰ¹ß¡£
——Edsgar Dijkstra
±à³ÌÄ£ÐÍÓжàÖÖ¡£¹ý³Ìʽ±à³ÌÓïÑÔʹÓõÄÊÇÓÉÁ÷¿ØÖÆÓï¾ä£¨WHILE-DO¡¢IF-THEN-ELSEºÍBEGIN-END£©¿ØÖƵÄһϵÁйý³Ì²½Ö裬½è´Ë°ÑÊäÈëÊý¾Ýת»»³ÉÊä³öÊý¾Ý¡£ÕâÊǶԱà³ÌµÄÒ»ÖÖ´«Í³ÈÏʶ£¬ÒòΪÕâÊÇÖøÃûµÄÊýѧ¼ÒÔ¼º²··ë·ÅµÒÁÂü¹éÄɳöÀ´µÄ£¬ºóÀ´Ò²³£±»³ÆÎª·ë·ÅµÒÁÂüÄ£ÐÍ¡£
ͬÑùµÄÔ´´úÂë¾ÏàͬµÄ±àÒëÆ÷±àÒëÖ®ºó£¬Ã¿´Î¶¼Éú³ÉÏàͬµÄ¿ÉÖ´ÐÐÄ£¿é¡£¸Ã³ÌÐòÔÚÿ´Îµ÷ÓÃʱ¶¼ÒÔÍêÈ«ÏàͬµÄ·½Ê½¹¤×÷¡£ÕâÖÖÄ£ÐÍÖеĹؼü×ÖÊÇ¿ÉÒÔÔ¤²âºÍÈ·¶¨µÄ¡£ ÓÉÓÚÕâÖÖÄ£Ð;ßÓпÉÈ·¶¨ÐÔ£¬ËùÒÔÖ÷ÒªÓÃÓÚһЩÊýѧ·ÖÎö¡£
º¯Êýʽ±à³ÌÓïÑԵĻù´¡ÊÇÓÃһϵÁÐǶÌ׵ĺ¯Êýµ÷ÓÃÀ´½â¾öÎÊÌâ¡£ÔÚÕâЩÓïÑÔÖУ¬¸ß½×º¯Êý¿ÉÒÔת»»×ÔÉíµÄ¹¦ÄÜ£¬Õâ¸ö¸ÅÄî·Ç³£ÖØÒª¡£µ¼Êý±ä»»ºÍ»ý·Ö±ä»»¾ÍÊÇÕâÖָ߽׺¯ÊýÔÚÊýѧÉÏÓ¦ÓõÄʵÀý¡£ÕâÖÖÓïÑÔµÄÄ¿±êÖ®Ò»ÊDZÜÃâÔÚ³ÌÐòÖгöÏÖ¸±×÷Ó㬱£Ö¤ËüÃÇÄܹ»ÒÔ´úÊýµÄ·½Ê½½øÐÐÓÅ»¯¡£ÌرðÊÇ£¬Ò»µ©Ä³¸ö±í´ïʽÓëÁíÒ»¸ö±í´ïʽÏàµÈ£¨Ä³ÖÖÒâÒåÉϵÄÏàµÈ£© £¬ËüÃǾͿÉÒÔÌæ»»£¬¶ø²»»áÓ°ÏìÕû¸öÔËËã½á¹û¡£
APLÊÇ×î³É¹¦µÄº¯Êýʽ±à³ÌÓïÑÔ¡£×Ô´Ó1962ÄêKen IversonµÄA Program
Ïà¹ØÎĵµ£º
CREATE FUNCTION dbo.UF_GetInvoiceSerials( @bizCode VARCHAR(10))
RETURNS VARCHAR(100)
AS
BEGIN
DECLARE @ret AS VARCHAR(1000)
SELECT @ret=Coalesce(@ret + ', ','') +
CASE e.ID
  ......
·½°¸1 ÊÊÓÃÓÚoracle9iÒÔÉÏ£¡
select * from
(select row_number() over(order by sendid desc) rn,m.* from xxt_msgreceive m )
where rn <1010 and rn>=1000
·½°¸2
SELECT * from (SELECT A.*, ROWNUM RN from (SELECT * from xxt_msg where sendstatus=1 order by msgid desc) A WHERE ROWNUM < ......
Student(S#,Sname,Sage,Ssex) ѧÉú±í
Course(C#,Cname,T#) ¿Î³Ì±í
SC(S#,C#,score) ³É¼¨±í
Teacher(T#,Tname) ½Ìʦ±í
ÎÊÌ⣺
1¡¢²éѯ“001”¿Î³Ì±È“002”¿Î³Ì³É¼¨¸ßµÄËùÓÐѧÉúµÄѧºÅ£»
select a.S# from (select s#,score from SC where C#='001') a,(select s#,score
fr ......
Ö÷ÒªÕë¶ÔSQL ServerÊý¾Ý¿âËÀËøÏÖÏóµÄÔ¤·À¼°½â¾ö´ëÊ©½øÐÐÁËÏêϸµÄ½éÉÜ£¬¸ü¶àÄÚÈÝÇë´ó¼Ò²Î¿¼ÏÂÎÄ£º
¡¡¡¡ËÀËøÊÇÖ¸ÔÚij×é×ÊÔ´ÖУ¬Á½¸ö»òÁ½¸öÒÔÉϵÄÏß³ÌÔÚÖ´Ðйý³ÌÖУ¬ÔÚÕù¶áijһ×ÊԴʱ¶øÔì³É»¥ÏàµÈ´ýµÄÏÖÏó£¬ÈôÎÞÍâÁ¦µÄ×÷ÓÃÏÂ,ËüÃǶ¼½«ÎÞ·¨ÍƽøÏÂÈ¥£¬ËÀʱ¾Í¿ÉÄÜ»á²úÉúËÀËø,ÕâЩÓÀÔ¶ÔÚ»¥ÏàµÈ´ýµÄ½ø³Ì³ÆÎªËÀËøÏ̡߳£¼òµ¥µ ......
´æ´¢¹ý³ÌÖг£Óõ½µÄSQLÊÂÎñ´¦ÀíÓï¾ä¸ñʽ¿ÉÄÜ»áÓÐÈçϼ¸ÖÖ:
µÚÒ»ÖÖ:
set xact_abort on
begin tran
insert ...
update ...
  ......