LIKE ÊÇÁíÒ»¸öÔÚ WHERE ×Ó¾äÖлáÓõ½µÄÖ¸Áî¡£»ù±¾ÉÏ£¬LIKE ÄÜÈÃÎÒÃÇÒÀ¾ÝÒ»¸öÌ×ʽ (pattern) À´ÕÒ³öÎÒÃÇÒªµÄ×ÊÁÏ¡£Ïà¶ÔÀ´Ëµ£¬ÔÚÔËÓà IN µÄʱºò£¬ÎÒÃÇÍêÈ«µØÖªµÀÎÒÃÇÐèÒªµÄÌõ¼þ£»ÔÚÔËÓà BETWEEN µÄʱºò£¬ÎÒÃÇÔòÊÇÁгöÒ»¸ö·¶Î§¡£ LIKE µÄÓï·¨ÈçÏ£º
SELECT "À¸Î»Ãû"
from "±í¸ñÃû"
WHERE "À¸Î»Ãû" LIKE {Ì×ʽ}
{Ì×ʽ} ¾³£°üÀ¨Ò°¿¨ (wildcard). ÒÔÏÂÊǼ¸¸öÀý×Ó£º
'A_Z': ËùÓÐÒÔ 'A' ÆðÍ·£¬ÁíÒ»¸öÈκÎÖµµÄ×ÖÔ£¬ÇÒÒÔ 'Z' Ϊ½áβµÄ×Ö´®¡£ 'ABZ' ºÍ 'A2Z' ¶¼·ûºÏÕâÒ»¸öģʽ£¬¶ø 'AKKZ' ²¢²»·ûºÏ (ÒòΪÔÚ A ºÍ Z Ö®¼äÓÐÁ½¸ö×ÖÔ£¬¶ø²»ÊÇÒ»¸ö×ÖÔ)¡£
'ABC%': ËùÓÐÒÔ 'ABC' ÆðÍ·µÄ×Ö´®¡£¾ÙÀýÀ´Ëµ£¬'ABCD' ºÍ 'ABCABC' ¶¼·ûºÏÕâ¸öÌ×ʽ¡£
'%XYZ': ËùÓÐÒÔ 'XYZ' ½áβµÄ×Ö´®¡£¾ÙÀýÀ´Ëµ£¬'WXYZ' ºÍ 'ZZXYZ' ¶¼·ûºÏÕâ¸öÌ×ʽ¡£
'%AN%': ËùÓк¬ÓÐ 'AN' Õâ¸öÌ×ʽµÄ×Ö´®¡£¾ÙÀýÀ´Ëµ£¬ 'LOS ANGELES' ºÍ 'SAN FRANCISCO' ¶¼·ûºÏÕâ¸öÌ×ʽ¡£
ÎÒÃǽ«ÒÔÉÏ×îºóÒ»¸öÀý×ÓÓÃÔÚÎÒÃÇµÄ Store_Information ±í¸ñÉÏ:
Store_Information ±í¸ñ
store_name
Sales
Date
LOS ANGELES
$1500
Jan-05-1999
SAN DIEGO
$250
Jan-07-1999
SAN FRANCISCO
$300
Jan-08-1999
BOSTON
......
µ½Ä¿Ç°ÎªÖ¹£¬ÎÒÃÇÒÑѧµ½ÈçºÎ½åÓÉ SELECT ¼° WHEREÕâÁ½¸öÖ¸Á×ÊÁÏÓɱí¸ñÖÐ×¥³ö¡£²»¹ýÎÒÃÇÉÐδÌáµ½ÕâЩ×ÊÁÏÒªÈçºÎÅÅÁС£ÕâÆäʵÊÇÒ»¸öºÜÖØÒªµÄÎÊÌâ¡£ÊÂʵÉÏ£¬ÎÒÃǾ³£ÐèÒªÄܹ»½«×¥³öµÄ×ÊÁÏ×öÒ»¸öÓÐϵͳµÄÏÔʾ¡£Õâ¿ÉÄÜÊÇÓÉСÍù´ó (ascending) »òÊÇÓÉ´óÍùС(descending)¡£ÔÚÕâÖÖÇé¿öÏ£¬ÎÒÃǾͿÉÒÔÔËÓà ORDER BYÕâ¸öÖ¸ÁîÀ´´ïµ½ÎÒÃǵÄÄ¿µÄ¡£
ORDER BY µÄÓï·¨ÈçÏÂ:
SELECT "À¸Î»Ãû"
from "±í¸ñÃû"
[WHERE "Ìõ¼þ"]
ORDER BY "À¸Î»Ãû" [ASC, DESC]
[] ´ú±í WHERE ÊÇÒ»¶¨ÐèÒªµÄ¡£²»¹ý£¬Èç¹û WHERE ×Ӿ䴿Ôڵϰ£¬ËüÊÇÔÚ ORDER BY ×Ó¾ä֮ǰ¡£ ASC ´ú±í½á¹û»áÒÔÓÉСÍù´óµÄ˳ÐòÁгö£¬¶ø DESC ´ú±í½á¹û»áÒÔÓÉ´óÍùСµÄ˳ÐòÁгö¡£Èç¹ûÁ½Õß½ÔûÓб»Ð´³öµÄ»°£¬ÄÇÎÒÃǾͻáÓà ASC¡£
ÎÒÃÇ¿ÉÒÔÕպü¸¸ö²»Í¬µÄÀ¸Î»À´ÅÅ˳Ðò¡£ÔÚÕâ¸öÇé¿öÏ£¬ ORDER BY ×Ó¾äµÄÓï·¨ÈçÏÂ(¼ÙÉèÓÐÁ½¸öÀ¸Î»)£º
ORDER BY "À¸Î»Ò»" [ASC, DESC], "À¸Î»¶þ" [ASC, DESC]
ÈôÎÒÃǶÔÕâÁ½¸öÀ¸Î»¶¼Ñ¡ÔñÓÉСÍù´óµÄ»°£¬ÄÇÕâ¸ö×Ó¾ä¾Í»áÔì³É½á¹ûÊÇÒÀ¾Ý "À¸Î»Ò»" ÓÉСÍù´óÅÅ¡£ÈôÓкü¸±Ê×ÊÁÏ "À¸Î»Ò»" µÄÖµÏàµÈ£¬ÄÇÕ⼸±Ê×ÊÁϾÍÒÀ¾Ý "À¸Î»¶þ" ÓÉСÍù´óÅÅ¡£
¾ÙÀýÀ´Ëµ£¬ÈôÎÒÃÇÒªÒÀÕÕ Sales À¸Î»µÄÓÉ´óÍùСÁгö Store_Inf ......
¼ÈÈ»Êý¾Ý¿âÖÐÓÐÐí¶à×ÊÁ϶¼ÊÇÒÑÊý×ÖµÄÐÍ̬´æÔÚ£¬Ò»¸öºÜÖØÒªµÄÓÃ;¾ÍÊÇÒªÄܹ»¶ÔÕâЩÊý×Ö×öһЩÔËË㣬ÀýÈ罫ËüÃÇ×ÜºÏÆðÀ´£¬»òÊÇÕÒ³öËüÃÇµÄÆ½¾ùÖµ¡£SQL ÓÐÌṩһЩÕâÒ»ÀàµÄº¯Êý¡£ËüÃÇÊÇ£º
AVG (ƽ¾ù)
COUNT (¼ÆÊý)
MAX (×î´óÖµ)
MIN (×îСֵ)
SUM (×ܺÏ)
ÔËÓú¯ÊýµÄÓï·¨ÊÇ£º
SELECT "º¯ÊýÃû"("À¸Î»Ãû")
from "±í¸ñÃû"
¾ÙÀýÀ´Ëµ£¬ÈôÎÒÃÇÒªÓÉÎÒÃǵÄʾ·¶±í¸ñÖÐÇó³ö Sales À¸Î»µÄ×ܺϣ¬
Store_Information ±í¸ñ
store_name
Sales
Date
Los Angeles
$1500
Jan-05-1999
San Diego
$250
Jan-07-1999
Los Angeles
$300
Jan-08-1999
Boston
$700
Jan-08-1999
ÎÒÃǾʹòÈ룬
SELECT SUM(Sales) from Store_Information
½á¹û:
SUM(Sales)
$2750
$2750 ´ú±íËùÓÐ Sales À¸Î»µÄ×ܺÏ: $1500 + $250 + $300 + $700.
³ýÁ˺¯ÊýµÄÔËÓÃÍ⣬SQL Ò²¿ÉÒÔ×ö¼òµ¥µÄÊýѧÔËË㣬ÀýÈç¼Ó(+)ºÍ¼õ(-)¡£¶ÔÓÚÎÄ×ÖÀàµÄ×ÊÁÏ£¬SQL Ò²Óкü¸¸öÎÄ×Ö´¦Àí·½ÃæµÄº¯Êý£¬ÀýÈçÎÄ×ÖÏàÁ¬ (concatenation)£¬ÎÄ×ÖÐÞÕû (trim)£¬ÒÔ¼°×Ó×Ö´® (substring)¡£²»Í¬µÄÊý¾Ý¿â¶ÔÕâЩº¯ÊýÓв»Í¬µÄÓï·¨£¬ËùÒÔ×îºÃÊDzο¼ÄúËùÓÃÊý¾Ý¿âµÄÐÅÏ¢£¬À´È·¶¨ÔÚÄǸöÊý¾Ý¿âÖУ¬ÕâЩº¯ÊýÊÇÈçºÎ±»Ô ......
ÔÚÉÏÒ»Ò³ÓÐÌáµ½£¬COUNT ÊǺ¯ÊýÖ®Ò»¡£ÓÉÓÚËüµÄʹÓù㷺£¬ÎÒÃÇÔÚÕâÀïÌØ±ðÌá³öÀ´ÌÖÂÛ¡£»ù±¾ÉÏ£¬COUNT ÈÃÎÒÃÇÄܹ»Êý³öÔÚ±í¸ñÖÐÓжàÉÙ±Ê×ÊÁϱ»Ñ¡³öÀ´¡£ËüµÄÓï·¨ÊÇ£º
SELECT COUNT("À¸Î»Ãû")
from "±í¸ñÃû"
¾ÙÀýÀ´Ëµ£¬ÈôÎÒÃÇÒªÕÒ³öÎÒÃǵÄʾ·¶±í¸ñÖÐÓм¸±Ê store_name À¸²»Êǿհ׵Ä×ÊÁÏʱ£¬
Store_Information ±í¸ñ
store_name
Sales
Date
Los Angeles
$1500
Jan-05-1999
San Diego
$250
Jan-07-1999
Los Angeles
$300
Jan-08-1999
Boston
$700
Jan-08-1999
ÎÒÃǾʹòÈ룬
SELECT COUNT(store_name)
from Store_Information
WHERE store_name is not NULL
½á¹û:
Count(store_name)
4
"is not NULL" ÊÇ "Õâ¸öÀ¸Î»²»Êǿհ×" µÄÒâ˼¡£
COUNT ºÍ DISTINCT ¾³£±»ºÏÆðÀ´Ê¹Óã¬Ä¿µÄÊÇÕÒ³ö±í¸ñÖÐÓжàÉٱʲ»Í¬µÄ×ÊÁÏ (ÖÁÓÚÕâЩ×ÊÁÏʵ¼ÊÉÏÊÇʲô²¢²»ÖØÒª)¡£ ¾ÙÀýÀ´Ëµ£¬Èç¹ûÎÒÃÇÒªÕÒ³öÎÒÃǵıí¸ñÖÐÓжàÉÙ¸ö²»Í¬µÄ store_name£¬ÎÒÃǾʹòÈ룬
SELECT COUNT(DISTINCT store_name)
from Store_Information
½á¹û:
Count(DISTINCT store_name)
3
......
ÎÒÃÇÏÖÔڻص½º¯ÊýÉÏ¡£¼ÇµÃÎÒÃÇÓà SUM Õâ¸öÖ¸ÁîÀ´Ëã³öËùÓÐµÄ Sales (ÓªÒµ¶î)°É£¡Èç¹ûÎÒÃǵÄÐèÇó±ä³ÉÊÇÒªËã³öÿһ¼äµê (store_name) µÄÓªÒµ¶î (sales)£¬ÄÇÔõô°ìÄØ£¿ÔÚÕâ¸öÇé¿öÏ£¬ÎÒÃÇÒª×öµ½Á½¼þÊ£ºµÚÒ»£¬ÎÒÃǶÔÓÚ store_name ¼° Sales ÕâÁ½¸öÀ¸Î»¶¼ÒªÑ¡³ö¡£µÚ¶þ£¬ÎÒÃÇÐèҪȷÈÏËùÓÐµÄ sales ¶¼ÒªÒÀÕÕ¸÷¸ö store_name À´·Ö¿ªËã¡£Õâ¸öÓ﷨Ϊ£º
SELECT "À¸Î»1", SUM("À¸Î»2")
from "±í¸ñÃû"
GROUP BY "À¸Î»1"
ÔÚÎÒÃǵÄʾ·¶ÉÏ£¬
Store_Information ±í¸ñ
store_name
Sales
Date
Los Angeles
$1500
Jan-05-1999
San Diego
$250
Jan-07-1999
Los Angeles
$300
Jan-08-1999
Boston
$700
Jan-08-1999
ÎÒÃǾʹòÈ룬
SELECT store_name, SUM(Sales)
from Store_Information
GROUP BY store_name
½á¹û:
store_name
SUM(Sales)
Los Angeles
$1800
San Diego
$250
Boston
$700
µ±ÎÒÃÇÑ¡²»Ö»Ò»¸öÀ¸Î»£¬ÇÒÆäÖÐÖÁÉÙÒ»¸öÀ¸Î»Óаüº¬º¯ÊýµÄÔËÓÃʱ£¬ÎÒÃǾÍÐèÒªÓõ½ GROUP BY Õâ¸öÖ¸Áî¡£ÔÚÕâ¸öÇé¿öÏ£¬ÎÒÃÇÐèҪȷ¶¨ÎÒÃÇÓÐ GROUP BY ËùÓÐÆäËûµÄÀ¸Î»¡£»»¾ä»°Ëµ£¬³ýÁËÓаüÀ¨º¯ÊýµÄÀ¸Î»Í⣬ÎÒ ÃǶ¼ÐèÒª½«Æä·ÅÔÚ GROUP BY µÄ×Ó¾äÖС£ ......
ÄÇÎÒÃÇÈçºÎ¶Ôº¯Êý²úÉúµÄÖµÀ´É趨Ìõ¼þÄØ£¿¾ÙÀýÀ´Ëµ£¬ÎÒÃÇ¿ÉÄÜÖ»ÐèÒªÖªµÀÄÄЩµêµÄÓªÒµ¶îÓг¬¹ý $1,500¡£ÔÚÕâ¸öÇé¿öÏ£¬ÎÒÃDz»ÄÜʹÓà WHERE µÄÖ¸Áî¡£ÄÇÒªÔõô°ìÄØ£¿ºÜÐÒÔ˵أ¬SQL ÓÐÌṩһ¸ö HAVING µÄÖ¸Á¶øÎÒÃǾͿÉÒÔÓÃÕâ¸öÖ¸ÁîÀ´´ïµ½Õâ¸öÄ¿±ê¡£ HAVING ×Ó¾äͨ³£ÊÇÔÚÒ»¸ö SQL ¾ä×ÓµÄ×îºó¡£Ò»¸öº¬ÓÐ HAVING ×Ó¾äµÄ SQL ²¢²»Ò»¶¨Òª°üº¬ GROUP BY ×Ӿ䡣HAVING µÄÓï·¨ÈçÏ£º
SELECT "À¸Î»1", SUM("À¸Î»2")
from "±í¸ñÃû"
GROUP BY "À¸Î»1"
HAVING (º¯ÊýÌõ¼þ)
Çë¶ÁÕß×¢Ò⣺ GROUP BY ×Ӿ䲢²»ÊÇÒ»¶¨ÐèÒªµÄ¡£
ÔÚÎÒÃÇStore_Information ±í¸ñÕâ¸öÀý×ÓÖÐ,
Store_Information ±í¸ñ
store_name
Sales
Date
Los Angeles
$1500
Jan-05-1999
San Diego
$250
Jan-07-1999
Los Angeles
$300
Jan-08-1999
Boston
$700
Jan-08-1999
ÎÒÃÇ´òÈ룬
SELECT store_name, SUM(sales)
from Store_Information
GROUP BY store_name
HAVING SUM(sales) > 1500
½á¹û:
store_name
SUM(Sales)
Los Angeles
$1800
......