Õâ¸öÂß¼¹ØÏµÕ§¿´ÆðÀ´±È½Ï¸´ÔÓ£¬ÅªÇå³þÁ˾ͺã¡
ÓÐÁ½¸ö±í£¬
student(
id,
name,
primary key (id)
);
studentInfo(
id,
age,
address,
foreign key(id) references outTable(id) on delete cascade on update cascade
);
µ±ÎÒÃÇɾ³ýstudent±íµÄʱºò×ÔȻϣÍûstudentInfoÀïµÄÏà¹ØÐÅÏ¢Ò²±»É¾³ý£¬Õâ¾ÍÊÇÍâ¼üÆð×÷Óõĵط½¡£
Íâ¼üÓÐÒ»¸öÔÔò£¬¾ÍÊÇÒ»¸ö±íµÄÍâ¼ü±ØÐëÊÇÁíÒ»¸ö±íµÄÖ÷¼ü,ÈçstudentInfo±íµÄÍâ¼üÊÇid,ÊÇstudent±íµÄÖ÷¼ü¡£Ç°ÕßÊÇ´Ó±í£¬ºóÕßÊÇÖ÷±í£¬ÈçstudentInfoÊÇ´Ó±í£¬studentÊÇÖ÷±í¡£
foreign key(id) references outTable(id) on delete cascade on update cascade£¬Õâ¾ä»°µÄÒâ˼ÊÇ£¬ÉèÖÃstudent±íµÄidΪstudentInfo±íµÄÍâ¼ü£¬student±íÀïµÄÐÅÏ¢ÓÐÈκεÄdelete»òÕßupdateµÄʱºò£¬studentInfoÀïµÄÐÅÏ¢Ò²ÒªËæÖ®¸Ä±ä¡£ ......
select a.ClassName,a.CourseName,sum(²»¼°¸ñ) as ²»¼°¸ñ,sum(²î) as ²î,sum(ÖеÈ) as ÖеÈ,sum(ºÃ) as ºÃ ,sum(²»¼°¸ñ)+sum(²î)+sum(ÖеÈ)+sum(ºÃ) as °à¼¶×ÜÈËÊý from (select StudentID,ClassName,CourseName,1 as ²»¼°¸ñ,0 as ²î,0 as ÖеÈ,0 as ºÃ from StudentScore where ScoreRemark='fail' union all
select StudentID,ClassName,CourseName,0 as ²»¼°¸ñ,1 as ²î,0 as ÖеÈ,0 as ºÃ from StudentScore where ScoreRemark='low' union all
select StudentID,ClassName,CourseName,0 as ²»¼°¸ñ,0 as ²î,1 as ÖеÈ,0 as ºÃ from StudentScore where ScoreRemark='medium' union all
select StudentID,ClassName,CourseName,0 as ²»¼°¸ñ,0 as ²î,0 as ÖеÈ,1 as ºÃ from StudentScore where ScoreRemark='good' )a group by ClassName,CourseName
ÔÚÕâÀïÐèҪעÒâµÄÊÇÒª¸øÄ³Ð©×ֶμӱðÃûÒÔÊ¾Çø±ð£¡ ......
±¾ÒëÎIJÉÓÃ֪ʶ¹²ÏíÊðÃû-·ÇÉÌÒµÐÔʹÓÃ-Ïàͬ·½Ê½¹²Ïí 3.0 UnportedÐí¿ÉÐÒé·¢²¼£¬×ªÔØÇë±£Áô´ËÐÅÏ¢
ÒëÕߣºÂí³ÝÜÈ | Á´½Ó£ºhttp://www.dbabeta.com/2010/oracle-sql-server-comparison-i.html
×÷ÕߣºSadequl Hussain | ÔÎÄ£ºhttp://www.sql-server-performance.com/articles/dba/oracle_sql_server_comparison_p1.aspx
Ò»°ãµÄ¹«Ë¾Í¨³£»áÔÚËûÃǵÄÐÅϢϵͳ¼Ü¹¹ÖÐÒýÈë¶àÖÖÊý¾Ý¿âƽ̨£¬Í¬Ê±ÒýÈëÈýµ½ËÄÖÖ²»Í¬µÄRDBMS½â¾ö·½°¸µÄÖдóÐ͹«Ë¾Ò²²¢²»ÉÙ¼û£¬µ±È»ÕâЩ¹«Ë¾ÀïÃæµÄDBAÃÇͨ³£Ò²ÐèҪͬʱӵÓйÜÀí¶àÖÖ²»Í¬Æ½Ì¨µÄ¼¼ÄÜÁË¡£
Ö»ÔÚÒ»ÖÖÆ½Ì¨ÉÏÕ¹¿ª¹¤×÷µÄÊý¾Ý¿âר¼ÒÃÇҲͨ³£»áÆÚ´ý×ÅÔÚËûÃǵÄÏÂÒ»·Ý¹¤×÷ÖÐÄÜѧµ½µã²»Ò»ÑùµÄ¶«Î÷£¬ÄÇЩÓÐÓÂÆøµÄÈËÃÇÔòÔ¸Ò⻨ʱ¼ä¡¢½ðÇ®ºÍ¾«Á¦È¥Ñ§Ï°ÐµĶ«Î÷£¬Ò²ÓÐÆäËûÒòΪ»»ÁËй«Ë¾»òÕßÊÇΪÁËÕÒÐµĹ¤×÷¶øÈ¥Ñ§Ï°ÐµÄϵͳµÄÈËÃÇ£¬ÎãÓ¹ÖÃÒɵÄÒ»µã¾ÍÊǹ«Ë¾ÀϰåºÍÈËÁ¦×¨¼ÒÃÇ»á¸ü¼ÓÇàíùÓÚÄÇЩӵÓжà¸öÁìÓò¾ÑéµÄÇóÖ°Õß¡£
ÒÀÎÒ¸öÈ˵ľÑéÀ´¿´£¬ÔÚѧϰһ¸öеÄÊý¾Ýƽ̨µÄʱºò£¬×îºÃµÄ·½·¨¾ÍÊÇÔÚÐµĻ·¾³ÖÐÈ¥·¢ÏÖÄÇЩÄãÒÑÖªµÄ¶«Î÷£¬ÕâÑùѧϰÆðÀ´»á¼òµ¥ºÜ¶à¡£µ±È»£¬µ±ÖÐÒ²»áÓöµ½Ò»Ð©È«ÐµĸÅÄîÐèҪȥѧϰ£¬»òÕßÊÇÍüµôһЩÄãÏÖÔÚÒÑÖªµÄ¸ÅÄµ«²»¹ÜÔõô˵Äã²»ÊÇ´Ó ......
±¾ÒëÎIJÉÓÃ֪ʶ¹²ÏíÊðÃû-·ÇÉÌÒµÐÔʹÓÃ-Ïàͬ·½Ê½¹²Ïí 3.0 UnportedÐí¿ÉÐÒé·¢²¼£¬×ªÔØÇë±£Áô´ËÐÅÏ¢
ÒëÕߣºÂí³ÝÜÈ | Á´½Ó£ºhttp://www.dbabeta.com/2010/oracle-sql-server-comparison-i.html
×÷ÕߣºSadequl Hussain | ÔÎÄ£ºhttp://www.sql-server-performance.com/articles/dba/oracle_sql_server_comparison_p1.aspx
Ò»°ãµÄ¹«Ë¾Í¨³£»áÔÚËûÃǵÄÐÅϢϵͳ¼Ü¹¹ÖÐÒýÈë¶àÖÖÊý¾Ý¿âƽ̨£¬Í¬Ê±ÒýÈëÈýµ½ËÄÖÖ²»Í¬µÄRDBMS½â¾ö·½°¸µÄÖдóÐ͹«Ë¾Ò²²¢²»ÉÙ¼û£¬µ±È»ÕâЩ¹«Ë¾ÀïÃæµÄDBAÃÇͨ³£Ò²ÐèҪͬʱӵÓйÜÀí¶àÖÖ²»Í¬Æ½Ì¨µÄ¼¼ÄÜÁË¡£
Ö»ÔÚÒ»ÖÖÆ½Ì¨ÉÏÕ¹¿ª¹¤×÷µÄÊý¾Ý¿âר¼ÒÃÇҲͨ³£»áÆÚ´ý×ÅÔÚËûÃǵÄÏÂÒ»·Ý¹¤×÷ÖÐÄÜѧµ½µã²»Ò»ÑùµÄ¶«Î÷£¬ÄÇЩÓÐÓÂÆøµÄÈËÃÇÔòÔ¸Ò⻨ʱ¼ä¡¢½ðÇ®ºÍ¾«Á¦È¥Ñ§Ï°ÐµĶ«Î÷£¬Ò²ÓÐÆäËûÒòΪ»»ÁËй«Ë¾»òÕßÊÇΪÁËÕÒÐµĹ¤×÷¶øÈ¥Ñ§Ï°ÐµÄϵͳµÄÈËÃÇ£¬ÎãÓ¹ÖÃÒɵÄÒ»µã¾ÍÊǹ«Ë¾ÀϰåºÍÈËÁ¦×¨¼ÒÃÇ»á¸ü¼ÓÇàíùÓÚÄÇЩӵÓжà¸öÁìÓò¾ÑéµÄÇóÖ°Õß¡£
ÒÀÎÒ¸öÈ˵ľÑéÀ´¿´£¬ÔÚѧϰһ¸öеÄÊý¾Ýƽ̨µÄʱºò£¬×îºÃµÄ·½·¨¾ÍÊÇÔÚÐµĻ·¾³ÖÐÈ¥·¢ÏÖÄÇЩÄãÒÑÖªµÄ¶«Î÷£¬ÕâÑùѧϰÆðÀ´»á¼òµ¥ºÜ¶à¡£µ±È»£¬µ±ÖÐÒ²»áÓöµ½Ò»Ð©È«ÐµĸÅÄîÐèҪȥѧϰ£¬»òÕßÊÇÍüµôһЩÄãÏÖÔÚÒÑÖªµÄ¸ÅÄµ«²»¹ÜÔõô˵Äã²»ÊÇ´Ó ......
SQL×Ö·û´®º¯Êýhttp://www.cnblogs.com/virusswb/archive/2008/09/10/1288576.html
selectÓï¾äÖÐÖ»ÄÜʹÓÃsqlº¯Êý¶Ô×ֶνøÐвÙ×÷£¨Á´½Ósql server£©£¬
select ×Ö¶Î1 from ±í1 where ×Ö¶Î1.IndexOf("ÔÆ")=1;
ÕâÌõÓï¾ä²»¶ÔµÄÔÒòÊÇindexof£¨£©º¯Êý²»ÊÇsqlº¯Êý£¬¸Ä³Ésql¶ÔÓ¦µÄº¯Êý¾Í¿ÉÒÔÁË¡£
left£¨£©ÊÇsqlº¯Êý¡£
select ×Ö¶Î1 from ±í1 where charindex£¨'ÔÆ',×Ö¶Î1£©=1;
×Ö·û´®º¯Êý¶Ô¶þ½øÖÆÊý¾Ý¡¢×Ö·û´®ºÍ±í´ïʽִÐв»Í¬µÄÔËËã¡£´ËÀຯÊý×÷ÓÃÓÚCHAR¡¢VARCHAR¡¢ BINARY¡¢ ºÍVARBINARY Êý¾ÝÀàÐÍÒÔ¼°¿ÉÒÔÒþʽת»»ÎªCHAR »òVARCHARµÄÊý¾ÝÀàÐÍ¡£¿ÉÒÔÔÚSELECT Óï¾äµÄSELECT ºÍWHERE ×Ó¾äÒÔ¼°±í´ïʽÖÐʹÓÃ×Ö·û´®º¯Êý¡£
³£ÓõÄ×Ö·û´®º¯ÊýÓУº
Ò»¡¢×Ö·ûת»»º¯Êý
1¡¢ASCII()
·µ»Ø×Ö·û±í´ïʽ×î×ó¶Ë×Ö·ûµÄASCII ÂëÖµ¡£ÔÚASCII£¨£©º¯ÊýÖУ¬´¿Êý×ÖµÄ×Ö·û´®¿É²»ÓÑ’À¨ÆðÀ´£¬µ«º¬ÆäËü×Ö·ûµÄ×Ö·û´®±ØÐëÓÑ’À¨ÆðÀ´Ê¹Ó㬷ñÔò»á³ö´í¡£
2¡¢CHAR()
½«ASCII Âëת»»Îª×Ö·û¡£Èç¹ûûÓÐÊäÈë0 ~ 255 Ö®¼äµÄASCII ÂëÖµ£¬CHAR£¨£© ·µ»ØNULL ¡£
3¡¢LOWER()ºÍUPPER()
LOWER()½«×Ö·û´®È«²¿×ªÎªÐ¡Ð´£»UPPER()½«×Ö·û´®È«²¿×ªÎª´óд¡£
4¡¢STR()
°ÑÊýÖµÐÍÊý¾Ýת»»Îª×Ö·ûÐÍÊý¾ ......
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
from SC where C#='002') b
where a.score>b.score and a.s#=b.s#;
2¡¢²éѯƽ¾ù³É¼¨´óÓÚ60·ÖµÄͬѧµÄѧºÅºÍƽ¾ù³É¼¨£»
select S#,avg(score)
from sc
group by S# having avg(score) >60;
3¡¢²éѯËùÓÐͬѧµÄѧºÅ¡¢ÐÕÃû¡¢Ñ¡¿ÎÊý¡¢×ܳɼ¨£»
select Student.S#,Student.Sname,count(SC.C#),sum(score)
from Student left Outer join SC on Student.S#=SC.S#
group by Student.S#,Sname
4¡¢²éѯÐÕ“ÀÄÀÏʦµÄ¸öÊý£»
select count(distinct(Tname))
from Teacher
where Tname like 'Àî%';
5¡¢²éѯûѧ¹ý“Ҷƽ”ÀÏʦ¿ÎµÄͬѧµÄѧºÅ¡¢ÐÕÃû£»
select Student.S#,Stu ......
----------Dbf µ¼Èë Sql Server±í----------
ÒÔϾùÒÔSQL2000¡¢VFP6¼°ÒÔÉϵıíΪÀý
´úÂëµ¼È룺²éѯ·ÖÎöÆ÷ÖÐÖ´ÐÐÈçÏÂÓï¾ä(ÏÈÑ¡Ôñ¶ÔÓ¦µÄÊý¾Ý¿â)
-------------Èç¹û½ÓÊܵ¼ÈëÊý¾ÝµÄSQL±íÒÑ´æÔÚ
--Èç¹û½ÓÊܵ¼ÈëÊý¾ÝµÄSQL±íÒѾ´æÔÚ
Insert Into ÒѾ´æÔÚµÄSQL±íÃû Select * from openrowset('MSDASQL','Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=c:','select * from aa.DBF')
--Ò²¿ÉÒÔ¶ÔÓ¦ÁÐÃû½øÐе¼È룬È磺
Insert Into ÒѾ´æÔÚµÄSQL±íÃû (ÁÐÃû1,ÁÐÃû2...) Select (¶ÔÓ¦ÁÐÃû1,¶ÔÓ¦ÁÐÃû2...) from openrowset('MSDASQL','Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=c:','select * from aa.DBF')
-------------Èç¹û½ÓÊܵ¼ÈëÊý¾ÝµÄSQL±í²»´æÔÚ£¬µ¼Èëʱ´´½¨
--·½·¨Ò»£ºÓÐÒ»¸öȱµã£º°ÑDBF±íµ¼ÈëSQL ServerÖкó£¬ÂíÉÏÓÃVISUAL FOXPRO´ò¿ªDBF±í£¬»áÌáʾ“²»ÄÜ´æÈ¡Îļþ”£¬¼´Õâ¸ö±í»¹±»SQL´ò¿ª×ÅÄØ¡£¿ÉÊǹýÁË1·ÖÖÓ×óÓÒ£¬ÔÙ´ò¿ªDBF±í¾Í¿ÉÒÔÁË£¬ËµÃ÷¾¹ýÒ»¶Îʱ¼äºó²éѯ·ÖÎöÆ÷²Å°ÑÕâ¸ö±í¹Ø±Õ¡£
Select * Into ÒªÉú³ÉµÄSQL±íÃû from openrowset('MSDASQL','Driver=Microsoft Visual FoxPro Driver;SourceType=DBF ......