SQLÓï¾äÓÅ»¯¼¼Êõ·ÖÎö
SQLÓï¾äÓÅ»¯¼¼Êõ·ÖÎö
·Ò룺Jerry [2005-11-11]
ÔÎijö´¦£ºhttp://www.51testing.com
ÔÎÄ×÷Õߣº²»Ïê
תÔØÇë×¢Ã÷£ºÀ´×ÔSawinϵͳ·ÖÎöÖ®´°
²Ù×÷·ûÓÅ»¯
IN ²Ù×÷·û
ÓÃINд³öÀ´µÄSQLµÄÓŵãÊDZȽÏÈÝÒ×д¼°ÇåÎúÒ׶®£¬Õâ±È½ÏÊʺÏÏÖ´úÈí¼þ¿ª·¢µÄ·ç¸ñ¡£
µ«ÊÇÓÃINµÄSQLÐÔÄÜ×ÜÊDZȽϵ͵ģ¬´ÓORACLEÖ´ÐеIJ½ÖèÀ´·ÖÎöÓÃINµÄSQLÓë²»ÓÃINµÄSQLÓÐÒÔÏÂÇø±ð£º
ORACLEÊÔͼ½«Æäת»»³É¶à¸ö±íµÄÁ¬½Ó£¬Èç¹ûת»»²»³É¹¦ÔòÏÈÖ´ÐÐINÀïÃæµÄ×Ó²éѯ£¬ÔÙ²éѯÍâ²ãµÄ±í¼Ç¼£¬Èç¹ûת»»³É¹¦ÔòÖ±½Ó²ÉÓöà¸ö±íµÄÁ¬½Ó·½Ê½²éѯ¡£Óɴ˿ɼûÓÃINµÄSQLÖÁÉÙ¶àÁËÒ»¸öת»»µÄ¹ý³Ì¡£Ò»°ãµÄSQL¶¼¿ÉÒÔת»»³É¹¦£¬µ«¶ÔÓÚº¬ÓзÖ×éͳ¼ÆµÈ·½ÃæµÄSQL¾Í²»ÄÜת»»ÁË¡£
ÍƼö·½°¸£ºÔÚÒµÎñÃܼ¯µÄSQLµ±Öо¡Á¿²»²ÉÓÃIN²Ù×÷·û¡£
NOT IN²Ù×÷·û
´Ë²Ù×÷ÊÇÇ¿ÁÐÍƼö²»Ê¹Óõģ¬ÒòΪËü²»ÄÜÓ¦ÓñíµÄË÷Òý¡£
ÍƼö·½°¸£ºÓÃNOT EXISTS »ò£¨ÍâÁ¬½Ó+ÅжÏΪ¿Õ£©·½°¸´úÌæ
<> ²Ù×÷·û£¨²»µÈÓÚ£©
²»µÈÓÚ²Ù×÷·ûÊÇÓÀÔ¶²»»áÓõ½Ë÷ÒýµÄ£¬Òò´Ë¶ÔËüµÄ´¦ÀíÖ»»á²úÉúÈ«±íɨÃè¡£
ÍƼö·½°¸£ºÓÃÆäËüÏàͬ¹¦ÄܵIJÙ×÷ÔËËã´úÌ棬Èç
a<>0 ¸ÄΪ a>0 or a<0
a<>’’ ¸ÄΪ a>’’
IS NULL »òIS NOT NULL²Ù×÷£¨ÅжÏ×Ö¶ÎÊÇ·ñΪ¿Õ£©
ÅжÏ×Ö¶ÎÊÇ·ñΪ¿ÕÒ»°ãÊDz»»áÓ¦ÓÃË÷ÒýµÄ£¬ÒòΪBÊ÷Ë÷ÒýÊDz»Ë÷Òý¿ÕÖµµÄ¡£
ÍƼö·½°¸£º
ÓÃÆäËüÏàͬ¹¦ÄܵIJÙ×÷ÔËËã´úÌ棬Èç
a is not null ¸ÄΪ a>0 »òa>’’µÈ¡£
²»ÔÊÐí×Ö¶ÎΪ¿Õ£¬¶øÓÃÒ»¸öȱʡֵ´úÌæ¿ÕÖµ£¬ÈçÒµÀ©ÉêÇëÖÐ״̬×ֶβ»ÔÊÐíΪ¿Õ£¬È±Ê¡ÎªÉêÇë¡£
½¨Á¢Î»Í¼Ë÷Òý£¨ÓзÖÇøµÄ±í²»Äܽ¨£¬Î»Í¼Ë÷Òý±È½ÏÄÑ¿ØÖÆ£¬Èç×Ö¶Îֵ̫¶àË÷Òý»áʹÐÔÄÜϽµ£¬¶àÈ˸üвÙ×÷»áÔö¼ÓÊý¾Ý¿éËøµÄÏÖÏó£©
> ¼° < ²Ù×÷·û£¨´óÓÚ»òСÓÚ²Ù×÷·û£©
´óÓÚ»òСÓÚ²Ù×÷·ûÒ»°ãÇé¿öÏÂÊDz»Óõ÷ÕûµÄ£¬ÒòΪËüÓÐË÷Òý¾Í»á²ÉÓÃË÷Òý²éÕÒ£¬µ«ÓеÄÇé¿öÏ¿ÉÒÔ¶ÔËü½øÐÐÓÅ»¯£¬ÈçÒ»¸ö±íÓÐ100Íò¼Ç¼£¬Ò»¸öÊýÖµÐÍ×Ö¶ÎA£¬30Íò¼Ç¼µÄA=0£¬30Íò¼Ç¼µÄA=1£¬39Íò¼Ç¼µÄA=2£¬1Íò¼Ç¼µÄA=3¡£ÄÇôִÐÐA>2ÓëA>=3µÄЧ¹û¾ÍÓкܴóµÄÇø±ðÁË£¬ÒòΪA>2ʱORACLE»áÏÈÕÒ³öΪ2µÄ¼Ç¼Ë÷ÒýÔÙ½øÐбȽϣ¬¶øA>=3ʱORACLEÔòÖ±½ÓÕÒµ½=3µÄ¼Ç¼Ë÷Òý¡£
LIKE²Ù×÷·û
LIKE²Ù×÷·û¿ÉÒÔÓ¦ÓÃͨÅä·û²éѯ£¬ÀïÃæµÄͨÅä·û×éºÏ¿ÉÄÜ´ïµ½¼¸ºõÊÇÈÎÒâµÄ²éѯ£¬µ«ÊÇÈç¹ûÓõò»ºÃÔò»á²úÉúÐÔÄÜÉϵÄÎÊÌ⣬ÈçLIKE ‘%5400%’ ÕâÖÖ²éѯ²»»áÒýÓÃË÷Òý£¬¶øLIKE ‘X5400%’Ôò»áÒýÓ÷¶
Ïà¹ØÎĵµ£º
SQL²Ù×÷È«¼¯
ÏÂÁÐÓï¾ä²¿·ÖÊÇMssqlÓï¾ä£¬²»¿ÉÒÔÔÚaccessÖÐʹÓá£
SQL·ÖÀࣺ
DDL—Êý¾Ý¶¨ÒåÓïÑÔ(CREATE£¬ALTER£¬DROP£¬DECLARE)
DML—Êý¾Ý²Ù×ÝÓïÑÔ(SELECT£¬DELETE£¬UPDATE£¬INSERT)
DCL—Êý¾Ý¿ØÖÆÓïÑÔ(GRANT£¬REVOKE£¬COMMIT£¬ROLLBACK)
Ê×ÏÈ,¼òÒª½éÉÜ»ù´¡Óï¾ä£º
1¡¢ËµÃ÷£º´´½¨Êý¾Ý¿â
CREATE ......
µÚÊ®¶þÕ PL/SQLÓ¦ÓóÌÐòÐÔÄܵ÷ÓÅ
1¡¢PL/SQLÐÔÄÜÎÊÌâµÄÔµÓÉ
Ó¦»ùÓÚPL/SQLµÄÓ¦ÓóÌÐòÊ©ÐÐЧÂʵÍÏÂʱ£¬Í¨³£ÊÇÒòΪ²»ºÃµÄSQL»°Óï¡¢±à³Ì²½Ö裬¶ÔPL/SQL»ù´¡ÕÆÎÕÔã¸â»òÊÇÂÒÓù²ÏíÄÚ´æ´¢Æ÷´Ù³ÉµÄ¡£
•PL/SQLÖв»ºÃµÄSQL»°Óï
PL/SQL±à³Ì¿´ÉÏÈ¥Ïà¶ÔÕսϼòµ¥£¬ÓÉÓÚËüÃǵĸ´ÔÓÄÚÈݶ¼ÑÚ²ØÔÚSQL»°ÓïÖУ¬SQL»°Óï¾³£·Öµ£´óÁ¿µÄ ......
ÒÔÇ°¶ÔÓÚSql ServerÖÐCaseÃüÁîµÄÓ÷¨Ò»Ö±²»ÊǺÜÁ˽⣬½ñÌìͨ¹ýÉÏÍø²éÁËһЩ×ÊÁÏ£¬½«Case»ù±¾µÄÓ÷¨×ܽáһϡ£
CaseÃüÁîÓÐÁ½ÖÖÓï·¨£º
A£©CASE<ÔËËãʽ>
WHEN <ÔËËãʽ> THEN <ÔËËãʽ>
……
WHEN <ÔËËãʽ> THEN <ÔËËãʽ>
[ELSE<ÔËËãʽ> ......
ת×ÔCSDNÂÛ̳£ºchaihuoniu
ÏÂÁÐÓï¾ä²¿·ÖÊÇMssqlÓï¾ä£¬²»¿ÉÒÔÔÚaccessÖÐʹÓá£
SQL·ÖÀࣺ
DDL—Êý¾Ý¶¨ÒåÓïÑÔ(CREATE£¬ALTER£¬DROP£¬DECLARE)
DML—Êý¾Ý²Ù×ÝÓïÑÔ(SELECT£¬DELETE£¬UPDATE£¬INSERT)
DCL—Êý¾Ý¿ØÖÆÓïÑÔ(GRANT£¬REVOKE£¬COMMIT£¬ROLLBACK)
Ê×ÏÈ,¼òÒª½éÉÜ»ù´¡Óï¾ä£º
1¡¢ËµÃ÷£º´´½¨Êý¾ ......
NULL£¬±íʾ²»Ã÷È·¡¢Î´ÖªµÄÁÐÖµ
²âÊÔ±í£ºtestnull(id varchar(32))
Êý¾Ý¿â£ºSybase ASA11.0
ÐÐÊý¾Ý(''), (NULL)
Êý¾Ý¿âÑ¡ÏîansinullΪtrue(Ò²ÊÇASAÊý¾Ý¿âµÄĬÈÏÑ¡Ïî)ʱ£¬
select * from testnull where id = null
select * from testnull where id != null
½á¹û¾ùΪ¿Õ
select * from testnull where id is null
½á¹ ......