sql Ö´ÐÐ˳Ðò
SQL SelectÓï¾äÍêÕûµÄÖ´ÐÐ˳Ðò
2009-06-02 15:57
SQL SelectÓï¾äÍêÕûµÄÖ´ÐÐ˳Ðò£º1¡¢from×Ó¾ä×é×°À´×Ô²»Í¬Êý¾ÝÔ´µÄÊý¾Ý£»2¡¢where×Ó¾ä»ùÓÚÖ¸¶¨µÄÌõ¼þ¶Ô¼Ç¼ÐнøÐÐɸѡ£»3¡¢group by×Ӿ佫Êý¾Ý»®·ÖΪ¶à¸ö·Ö×飻4¡¢Ê¹Óþۼ¯º¯Êý½øÐмÆË㣻5¡¢Ê¹ÓÃhaving×Ó¾äɸѡ·Ö×飻
ÒÔϽáÂÛÊÇͨ¹ýÔÚSql Server2000ÉϵÄʵÑéµÃ³öµÄ½áÂÛ£¬Ò²¿Éͨ¹ý²é¿´¹À¼ÆµÄÖ´Ðмƻ®£¨Ctrl+L£©À´²é¿´Ö´ÐÐ˳Ðò¡£ 1.ÏÈÖ´ÐеȺţ¨=£©×ó±ßÊDZäÁ¿µÄ±í´ïʽ£¨AÀࣩ£¬ÔÙÖ´ÐеȺţ¨=£©×ó±ßÊÇÁÐÃûµÄ±í´ïʽ£¨BÀࣩ¡£Àý£ºupdate tablename set columnName=@variable,@variable=@variable+1 ÏÈÖ´ÐÐ@variable=@variable+1£¬ÔÙÖ´ÐÐcolumnName=@variable 2.Èç¹ûÓжà¸öAÀࣨ»òBÀࣩ±í´ïʽ£¬°´´Ó×óµ½ÓÒ˳ÐòÖ´ÐÐAÀࣨ»òBÀࣩ±í´ïʽ¡£Àý£ºupdate tablename set columnName=@variable,@variable=@variable+1,@variable=2*@variable ÏÈÖ´ÐÐ@variable=@variable+1£¬ÔÙÖ´ÐÐ@variable=2*@variable£¬×îºóÖ´ÐÐcolumnName=@variable 3.ÁÐÃûËù´ú±íµÄÖµÓÀÔ¶ÊÇÔÖµ¡£Àý£ºupdate tablename set columnName=colunName+1,columnNameBa
group by
ÔÚselect Óï¾äÖпÉÒÔʹÓÃgroup by ×Ӿ佫Ðл®·Ö³É½ÏСµÄ×飬Ȼºó£¬Ê¹ÓþÛ×麯Êý·µ»ØÃ¿Ò»¸ö×éµÄ»ã×ÜÐÅÏ¢£¬ÁíÍ⣬¿ÉÒÔʹÓÃhaving×Ó¾äÏÞÖÆ·µ»ØµÄ½á¹û¼¯¡£group by ×Ó¾ä¿ÉÒÔ½«²éѯ½á¹û·Ö×飬²¢·µ»ØÐеĻã×ÜÐÅÏ¢Oracle °´ÕÕgroup by ×Ó¾äÖÐÖ¸¶¨µÄ±í´ïʽµÄÖµ·Ö×é²éѯ½á¹û¡£
ÔÚ´øÓÐgroup by ×Ó¾äµÄ²éѯÓï¾äÖУ¬ÔÚselect ÁбíÖÐÖ¸¶¨µÄÁÐҪôÊÇgroup by ×Ó¾äÖÐÖ¸¶¨µÄÁУ¬ÒªÃ´°üº¬¾Û×麯Êý
select max(sal),job emp group by job;
(×¢Òâmax(sal),jobµÄjob²¢·ÇÒ»¶¨Òª³öÏÖ£¬µ«ÓÐÒâÒå)
²éѯÓï¾äµÄselect ºÍgroup by ,having ×Ó¾äÊǾÛ×麯ÊýΨһ³öÏֵĵط½£¬ÔÚwhere ×Ó¾äÖв»ÄÜʹÓþÛ×麯Êý¡£
select deptno,sum(sal) from emp where sal>1200 group by deptno having sum(sal)>8500 order by deptno;
µ±ÔÚgropu by ×Ó¾äÖÐʹÓÃhaving ×Ó¾äʱ£¬²éѯ½á¹ûÖÐÖ»·µ»ØÂú×ãhavingÌõ¼þµÄ×é¡£ÔÚÒ»¸ösqlÓï¾äÖпÉÒÔÓÐwhere×Ó¾äºÍhaving×Ӿ䡣having Óëwhere ×Ó¾äÀàËÆ£¬¾ùÓÃÓÚÉèÖÃÏÞ¶¨Ìõ¼þ
where ×Ó¾äµÄ×÷ÓÃÊÇÔÚ¶Ô²éѯ½á¹û½øÐзÖ×éǰ£¬½«²»·ûºÏwhereÌõ¼þµÄÐÐÈ¥µô£¬¼´ÔÚ·Ö×é֮ǰ¹ýÂËÊý¾Ý£¬Ìõ¼þÖв»Äܰüº¬¾Û×麯Êý£¬Ê¹ÓÃwhereÌõ¼þÏÔÊ¾ÌØ¶¨µÄÐС£
having ×Ó¾äµÄ×÷ÓÃÊÇɸѡÂú×ãÌõ¼þµÄ×飬¼´ÔÚ·Ö×éÖ®ºó¹ýÂËÊý¾Ý£¬Ìõ¼
Ïà¹ØÎĵµ£º
Õ⼸ÌìÊÖÍ·¿ª·¢µÄϵͳҪ×öÒ»¸öÀàËÆwindowsÕË»§µ½ÆÚʱ¼äµÄ¹¦ÄÜ£¬¿¼ÂÇÁ˰ëÌìÏë³öÁËÒ»¸ö¼¼ÊõÉϺÍÂß¼É϶¼»¹ÄÜʵÏֵĽâ¾ö·½°¸£º
´´½¨Ò»¸öÓû§´æÈëÊý¾Ý¿âµÄʱºò¶¼´´½¨Ò»¸öʼþµ÷¶ÈÆ÷À´¿ØÖÆÓû§µÄµ½ÆÚʱ¼ä£¨mysqlµÄʱ¼äµ÷¶ÈÆ÷ȷʵºÜ·½±ã£©¡£ÏëÆðÀ´ÊǺܼòµ¥£¬µ«ÊÇ×öÆðÀ´ÎÊÌâȷʵһ²¨½ÓÒ»²¨...
һЩСÎÊÌâ¾Í²» ......
USE AdventureWorks
GO
CREATE PROC spEmployee
AS
SELECT * from Humanresources.Employee
EXEC spEmployee
ALTER PROC spEmployee
AS SELECT EmployeeID from Humanresources.Employee
drop proc spEmployee
ALTER PROC spEmployee
@LastName nvarchar(50) = NULL
AS
IF @LastName IS NULL
SELECT * f ......
´Ë²¿·ÖÄÚÈÝ´´½¨Ò»¸öÇáÁ¿¼¶T-SQL²âÊÔÌ×¼þ£¬×ܹ²ÓÐ3¸ö½Å±¾£º
ÓÃÓÚ´´½¨²âÊÔÆ½Ì¨Êý¾ÝºÍ´ý²â´æ´¢¹ý³ÌµÄ½Å±¾
--======================
--makeDbTestAndResults.sql
use master
go
if exists (select * from sysdatabases where name = 'DbTestAndResults')
drop database makeDbTes ......
(1)char¡¢varchar¡¢textºÍnchar¡¢nvarchar¡¢ntext
charºÍvarcharµÄ³¤¶È¶¼ÔÚ1µ½8000Ö®¼ä£¬ËüÃǵÄÇø±ðÔÚÓÚcharÊǶ¨³¤×Ö·ûÊý¾Ý£¬¶øvarcharÊDZ䳤×Ö·ûÊý¾Ý¡£Ëùν¶¨³¤¾ÍÊdz¤¶È¹Ì¶¨µÄ£¬µ±ÊäÈëµÄÊý¾Ý³¤¶ÈûÓдﵽָ¶¨µÄ³¤¶Èʱ½«×Ô¶¯ÒÔÓ¢ÎĿոñÔÚÆäºóÃæÌî³ä£¬Ê¹³¤¶È´ïµ½ÏàÓ¦µÄ³¤¶È£»¶ø±ä³¤×Ö·ûÊý¾ÝÔò²»»áÒÔ¿Õ¸ñÌî³ä¡£text´æ´¢¿É±ä ......
1. ËÀËøÔÀí
¸ù¾Ý²Ù×÷ϵͳÖе͍Ò壺ËÀËøÊÇÖ¸ÔÚÒ»×é½ø³ÌÖеĸ÷¸ö½ø³Ì¾ùÕ¼Óв»»áÊͷŵÄ×ÊÔ´£¬µ«Òò»¥ÏàÉêÇë±»ÆäËû½ø³ÌËùÕ¾Óò»»áÊͷŵÄ×ÊÔ´¶ø´¦ÓÚµÄÒ»ÖÖÓÀ¾ÃµÈ´ý״̬¡£
ËÀËøµÄËĸö±ØÒªÌõ¼þ£º
»¥³âÌõ¼þ(Mutual exclusion)£º×ÊÔ´²»Äܱ»¹²Ïí£¬Ö»ÄÜÓÉÒ»¸ö½ø³ÌʹÓá£
ÇëÇóÓë±£³ÖÌõ¼þ(Ho ......