intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Cách định dạng mã nguồn mở PHP (Personal Home Page) phần 7

Chia sẻ: Sdfasfs Sdfsdfad | Ngày: | Loại File: PDF | Số trang:15

92
lượt xem
7
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Phát biểu SQL dạng SELECT là một trong những phát biểu yêu cầu MySQL truy lục dữ liệu trên cơ sở dữ liệu chỉ định. SELECT dùng để đọc thông tin từ cơ sở dữ liệu theo những trường quy định, hay những biểu thức cho trường đó.

Chủ đề:
Lưu

Nội dung Text: Cách định dạng mã nguồn mở PHP (Personal Home Page) phần 7

  1. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM 5.2.2. Phaùt bieåu SELECT vôùi meänh ñeà FROM Phaùùt bieåu SQL daïng SELECT laø moät trong nhöõng phaùt bieåu yeâu caàu MySQL truy luïc döõ lieäu treân cô sôû döõ lieäu chæ ñònh. SELECT duøng ñeå ñoïc thoâng tin töø cô sôû döõ lieäu theo nhöõng tröôøng quy ñònh, hay nhöõng bieåu thöùc cho tröôøng ñoù. Meänh ñeà FROM chæ ra teân moät baûng hay nhöõng baûng coù quan heä caàn truy vaán thoâng tin. Thöôøng chuùng ta söû duïng coâng cuï MySQL-Front | Query ñeå thöïc thi phaùt bieåu SQL. Sau khi thöïc thi phaùt bieåu SQL, keát quaû traû veà soá maåu tin vaø toång soá maåu tin ñöôïc laáy ra töø baûng. Daáu * cho pheùp loïc maåu tin vôùi taát caû caùc tröôøng trong baûng, neáu muoán chæ roõ nhöõng tröôøng naøo caàn loïc baïn caàn neâu teân cuï theå nhöõng tröôøng ñoù. Ñeå tieän tham khaûo trong giaùo trình naøy chuùng toâi söû duïng moät phaàn cô sôû döõ lieäu coù saün cuûa MySQL, ñoàng thôøi boå sung theâm cô sôû döõ lieäu daønh cho öùng duïng baùn haøng qua maïng. Cô sôû döõ lieäu baùn haøng qua maïng coù teân laø Test, vaø bao goàm nhieàu baûng. Baèng phaùt bieåu SELECT chuùng ta coù theå bieát soá baûng hay ñoái töôïng khaùc ñang coù trong cô sôû döõ lieäu Test Ví duï 8-2: Thöïc thi phaùt bieåu SQL SELECT heä thoáng show tables from Test /* Hieån thò taát caû teân baûng cuûa cô sôû döõ lieäu hieän haønh */ Keát quaû traû veà danh saùch baûng nhö sau: TABLES_IN_TEST -------------------------------------- tblCountries tblProvinces tblAuthors tblPayment tblItemsion tblCustomers tblSoftware Ghi chuù: Baïn coù theå söû duïng phaùt bieåu SQL treân ñeå hieån thò nhöõng ñoái töôïng trong cô sôû döõ lieäu, baèng caùch thay theá caùc tham soá vaø ñieàu kieän. Cuù phaùp ñôn giaûn Select * From tablename /* Loïc taát caû soá lieäu cuûa taát caû caùc coät (field) cuûa tablename*/ Select field1,field2 From tablename /* Loïc taát caû soá lieäu cuûa 2 field: field1, field2 cuûa tablename*/ Select * From tablename Limit 0,10 /* Loïc top 10 maåu tin ñaàu tieân cuûa taát caû caùc field cuûa tablename*/ Select field1, field2 From tablename Limit 0,10 /* Loïc top 10 maåu tin ñaàu tieân cuûa 2 fields field1, field2 cuûa Giaùo vieân: Phaïm Höõu Khang
  2. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM tablename*/ Ví duï 8-3: phaùt bieåu phaùt bieåu SQL daïng Select Select * From tblCountries /* Lieät keâ taát caû caùc quoác gia trong baûng tblCountries hoaëc baïn coù theå lieät keâ teân nhö phaùt bieåu sau */ Select CountryName From tblCountries Keát quaû traû veà nhö sau: CountryCode CountryName -------- ---------- ------------ ------------- VNA Vietnam SNG Singapore USS United Stated UKD United Kingdom GER Germany CAM Cambodia THA Thai Land MAL Malaysia INC Indonesia CHN China 5.2.3. Phaùt bieåu SQL daïng SELECT vôùi meänh ñeà Where Khi baïn duøng meänh ñeà WHERE ñeå taïo neân tieâu chuaån caàn loïc maåu tin theo tieâu chuaån ñöôïc ñònh nghóa, thoâng thöôøng WHERE duøng coät (tröôøng) ñeå so saùnh vôùi giaù trò, coät khaùc, hay bieåu thöùc chöùa coät (tröôøng) baát kyø coù trong baûng. Phaùt bieåu SQL daïng Select vôùi meänh ñeà Where cuù phaùp coù daïng nhö sau: Select * from tablename where conditions Select field1, field2, field3 from tablename where conditions Vôùi conditions trong caû hai phaùt bieåu treân ñöôïc ñònh nghóa ñieàu kieän truy vaán nhö khai baùo sau: Select * From tablename where field1>10 select * from tblCountries where CountryCode in('VNA','CHN') Caùc pheùp toaùn so saùnh trong conditions bao goàm: >: lôùn hôn where Amount > 100000; ♦ = : lôùn hôn hoaëc baèng where Amount >= 100000; ♦ >= : nhoû hôn hoaëc baèng where Amount
  3. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM ♦ != : Khaùùc where CustID!='12'; ♦ : Khaùc where CustID'12'; Caùc pheùp toaùn logic coù theå söû duïng trong conditions ♦ and : Pheùp toaùn "and" SELECT * FROM tblOrders Where Amount!>100000 And CustID='12'; ♦ Or : Pheùp toaùn "or" SELECT * FROM tblOrderDetails Where Amount!>100000 Or CustID=‘12’; ♦ Not : Pheùp toaùn phuû ñònh (not) SELECT * FROM tblOrders where OrderDate is not null; ♦ Not in : Pheùp toaùn phuû ñònh (not in) SELECT * FROM tblOrders where OrderID not in (‘12’,’15’); ♦ Between: Keát quaû thuoäc trong mieàn giaù trò SELECT * FROM tblOrders Where Amount between 10 And 500; Like : Pheùp toaùn so saùnh gaàn gioáng, söû duïng daáu % ñeå theå hieän thay theá baèng kyù töï ñaïi ♦ dieän SELECT * FROM tblCustomers where CustName like '%A'; Not Like : Pheùp toaùn phuû ñònh so saùnh gaàn gioáng, söû duïng daáu % ñeå theå hieän thay theá ♦ baèng kyù töï ñaïi dieän SELECT * FROM tblCustomers where CustName not like '%A'; ♦ IN : Pheùp toaùn so saùnh trong moät taäp hôïp SELECT * FROM tblOrders Where OrderID in ('100','200','300'); Ví duï 8-5: Ví duï veà SQL daïng SELECT vaø Where Giaùo vieân: Phaïm Höõu Khang
  4. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM /* > : lôùn hôn */ Select * From tblOrders Where Amount > 100000; /* < : nhoû hôn */ Select * From tblOrders Where Amount < 100000; /* >= : lôùn hôn hoaëc baèng */ Select * From tblOrders Where Amount >= 100000; /* >= : nhoû hôn hoaëc baèng */ Select * From tblOrders Where Amount : Khoâng lôùn hôn */ Select * From tblOrders Where Amount !> 100000; /* !< : Khoâng nhoû hôn */ Select * From tblOrders Where Amount !< 100000; -- Caùc pheùp toaùn logic /* and : Pheùp toaùn vaø */ Select * From tblOrders Giaùo vieân: Phaïm Höõu Khang
  5. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Where Amount !>100000 And CustID=‘12’; /* Or : Pheùp toaùn hoaëc */ Select * From tblOrders Where Amount !>100000 Or CustID=‘12’; /* Not : Pheùp toaùn phuû ñònh */ Select * From tblOrders Where OrderDate is NOT NULL; /* Between: giaù trò naèm trong mieàn */ Select * From tblOrders Where Amount Between 10 and 500; /* Like : Pheùp toaùn so saùnh gaàn gioáng, söû duïng daáu % ñeå theå hieän thay theá baát kyø kyù töï */ Select * From tblOrders Where Descriion like '%A' Or CustID ='152'; /* Not Like : Pheùp toaùn phuû ñònh so saùnh gaàn gioáng, söû duïng daáu % ñeå theå hieän thay theá baát kyø kyù töï */ Select * From tblOrders Where Descriion not like '%A' Or CustID ='152'; /* IN : Pheùp toaùn so saùnh trong moät taäp hôïp */ Select * From tblOrders Where OrderID in ('134','244','433'); /* Not IN : Pheùp toaùn phuû ñònh so saùnh trong moät taäp hôïp */ Select * From tblOrders Where OrderID not in ('134','244','433'); Giaùo vieân: Phaïm Höõu Khang
  6. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM 5.2.4. Meänh ñeà Order by Thoâng thöôøng, trong khi truy vaán maåu tin töø baûng döõ lieäu, keát quaû hieån thò caàn saép xeáp theo chieàu taêng hay giaûm döïa treân kyù töï ALPHABET. Nhöng baïn cuõng coù theå saép xeáp theo moät tieâu chuaån baát kyø, chaúng haïn nhö bieåu thöùc. Khi saép xeáp döõ lieäu trình baøy trong keát quaû, caàn phaûi choïn tröôøng hay bieåu thöùc theo traät töï taêng daàn hoaëc giaûm daàn. Cuù phaùp cho meänh ñeà ORDER BY cuøng vôùi traïng thaùi taêng hay giaûm, öùng vôùi ASC saép xeáp taêng daàn, DESC giaûm daàn. Cuù phaùp coù daïng nhö sau: Order by columnname DESC Order by columnname1 + columnname2 DESC Order by columnname ASC Order by columnname1 ASC, columnname2 DESC Ví duï 8-6: SELECT vôùi meänh ñeà Order by DESC /*-- Giaûm daàn theo thôøi gian */ Select OrderID , OrderDate, CustID, Amount From tblOrders Where Amount >1000 Order by OrderDate DESC Keát quaû traû veà nhö sau: OrderID OrderDate CustID Amount ---------- ------------ ---------------------- 17 2001-09-20 12 178.243 18 2001-09-20 12 2.78534 16 2001-09-19 12 398.798 15 2001-09-18 12 5.758.876 14 2001-09-17 12 5.539.647 12 2001-09-16 12 1.330 13 2001-09-16 12 1.585.563 31 2001-09-16 13 459.525 11 2001-09-15 11 1.401.803 28 2001-09-15 13 1.45200 Ví duï 8-7: SQL daïng SELECT vôùi meänh ñeà Order by vaø ASC /*-- Taêng daàn theo thôøi gian */ Select OrderID , OrderDate, CustID, Amount From tblOrders Where Amount >1000 Order by OrderDate ASC Keát quaû traû veà nhö sau OrderID OrderDate CustID Amount ---------- --------------------------- -------- 01 2001-09-05 10 2.903.576 02 2001-09-05 10 48.168.567 03 2001-09-05 10 5.107.032 04 2001-09-08 10 2.355.537 05 2001-09-08 16 1.817.487 06 2001-09-10 16 26.000 19 2001-09-10 12 575.667 Giaùo vieân: Phaïm Höõu Khang
  7. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM 29 2001-09-10 13 466.500 07 2001-09-11 16 186.782 23 2001-09-11 12 459.162 Neáu muoán saép xeáp theo nhieàu coät (tröôøng), chæ caàn söû duïng daáu phaåy (,) ñeå phaân caùch caùc coät. Ví duï 8-7: SELECT vôùi meänh ñeà Order by vôùi 2 coät döõ lieäu Select OrderID , OrderDate, CustID, Amount From tblOrders Where Amount >1000 Order by OrderID,CustID DESC Keát quaû traû veà nhö sau: OrderID OrderDate CustID Amount ---------- --------------------------- -------- 31 2001-09-16 13 459.525 30 2001-09-15 13 153.120 29 2001-09-10 13 466.500 28 2001-09-15 13 145.200 27 2001-09-14 13 603.033 26 2001-09-13 13 230.000 25 2001-09-11 13 244.904 24 2001-09-12 13 1.367.228 23 2001-09-11 12 459.162 19 2001-09-10 12 575.667 Neáu muoán saép xeáp theo nhieàu tröôøng keát hôïp, chæ caàn duøng thöù töï töøng coät caùch nhau baèng daáu +. Ví duï 8-8: SELECT vôùi meänh ñeà Order by hôïp 2 coät /*-- Giaûm daàn theo soá OrderID vaø CustID */ Select OrderID , OrderDate, CustID, Amount From tblOrders Where Amount >1000 Order by OrderID + CustID DESC Keát quaû traû veà nhö sau: OrderID OrderDate CustID Amount ---------- --------------------------- -------- 31 2001-09-16 13 459.525 30 2001-09-15 13 153.120 29 2001-09-10 13 466.500 28 2001-09-15 13 145.200 27 2001-09-14 13 603.033 26 2001-09-13 13 230.000 25 2001-09-11 13 244.904 24 2001-09-12 13 1.367.228 23 2001-09-11 12 459.162 19 2001-09-10 12 575.667 Neáu trong phaùt bieåu SQL daïng SELECT coù nhieàu baûng keát hôïp laïi vôùi nhau, baïn coù theå duøng theâm teân baûng öùng vôùi coät cuûa baûng ñoù. Phaàn naøy seõ ñöôïc dieãn giaûi cuï theå hôn trong phaàn keá tieáp (JOIN -Pheùp hôïp). Giaùo vieân: Phaïm Höõu Khang
  8. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM 5.2.5. SQL daïng SELECT vôùi meänh ñeà GROUP BY Khi truy vaán maåu tin treân moät hay nhieàu baûng döõ lieäu, thoâng thöôøng coù nhöõng nghieäp vuï thuoäc tröôøng naøo ñoù coù cuøng giaù trò, ví duï khi hieån thò hôïp ñoàng phaùt sinh trong thaùng, keát quaû seõ coù nhieàu hôïp ñoàng cuûa khaùch haøng laëp ñi laëp laïi nhö ví duï 8-9. Ví duï 8-9: SQL daïng SELECT vôùi meänh ñeà Order by Select CustID, Amount from tblOrders Vôùi phaùt bieåu treân keát quaû traû veà nhö sau: CustID Amount ---------- ------------------------ 10 2.903.576 10 48.168.567 10 5.107.032 10 2.3555347 16 181.074.847 16 26.000 16 1.867.682 16 3.600.000 16 195.713.899 16 961.804.228 16 140.180.347 12 138 12 158.555.638 12 5.539.647 12 575.887.767 12 39.879.489 12 17.824.938 12 278.503.048 12 5.756.667 12 459.162 13 136.727.628 13 244.904 13 230.000 13 603.033 13 1.452.000 13 4.665.100 13 1.531.200 13 459.525 Trong baùo caùo chuùng ta laïi caàn phaûi bieát moãi khaùch haøng coù bao nhieâu laàn traû tieàn, toång soá tieàn cuûa moãi khaùch haøng ñaõ traû laø bao nhieâu? Ñeå laøm ñieàu naøy, chuùng ta söû duïng meänh ñeà GROUP BY trong phaùt bieåu SQL daïng SELECT cuøng vôùi moät soá haøm trong MySQL, baïn tham khaûo ví duï 8-10 ñöôïc trình baøy chi tieát töø ví duï 4-8 nhöng nhoùm maåu tin baèng meänh ñeà Group By. Ví duï 8-10: SQL daïng SELECT vôùi meänh ñeà Group By Select CustID, count (CustID), Sum(Amount) From tblOrders Group by CustID Order by CustID Keát quaû traû veà nhö sau: Giaùo vieân: Phaïm Höõu Khang
  9. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM CustID ---------- ---- ------------------- 16 7 2.956.562.368 12 9 3.843.022.604 13 8 145.913.378 10 4 72.382.804 5.3. Caùc haøm thoâng duïng trong MySQL 5.3.1. Caùc haøm trong phaùt bieåu GROUB BY Haøm AVG: Haøm traû veà giaù trò bình quaân cuûa coät hay tröôøng trong caâu truy vaán, ví duï nhö phaùt bieåu sau: Select AVG(Amount) From tblOrders Haøm MIN: Haøm traû veà giaù trò nhoû nhaát cuûa coät hay tröôøng trong caâu truy vaán, ví duï nhö phaùt bieåu sau: Select Min(Amount) From tblOrders Haøm MAX: Haøm traû veà giaù trò lôùn nhaát cuûa coät hay tröôøng trong caâu truy vaán, ví duï nhö caùc phaùt bieåu sau: Select Max(Amount) From tblOrders Haøm Count: Haøm traû veà soá löôïng maåu tin trong caâu truy vaán treân baûng, ví duï nhö caùc phaùt bieåu sau: Select count(*) From tblOrders Select count(CustID) From tblOrders Select count(*) From tblOrderDetails Haøm Sum: Haøm traû veà toång caùc giaù trò cuûa tröôøng, coät trong caâu truy vaán, ví duï nhö caùc phaùt bieåu sau: Select sum(Amount) From tblOrders Chaúng haïn, baïn coù theå tham khaûo dieãn giaûi toaøn boä caùc haøm duøng trong meänh ñeà GROUP BY. Ví duï 8-11: SQL daïng SELECT vôùi Group By vaø caùc haøm Select CustID, Count (CustID),Sum(Amount), Max(Amount), Min(Amount), Avg(Amount) From tblOrders Group by CustID Giaùo vieân: Phaïm Höõu Khang
  10. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Order by CustID Keát quaû traû veà nhö sau: CustID ---------- ----------- ------------------------- 16 7 2956562368 1.95713899 26000 422366052 12 9 3843022604 39879489 459162 427002511 13 8 145913378 1.36727628 230000 18239172.25 10 4 72382804 48168567 2903576 18095701 5.3.2. Caùc haøm xöû lyù chuoãi Haøm ASCII: Haøm traû veà giaù trò maõ ASCII cuûa kyù töï beân traùi cuûa chuoãi, ví duï nhö khai baùo: Select ASCII('TOI') Keát quaû traû veà nhö sau: 84 Haøm Char: Haøm naøy chuyeån ñoåi kieåu maõ ASCII töø soá nguyeân sang daïng chuoãi: Select char(35) Keát quaû traû veà nhö sau: # Haøm UPPER: Haøm naøy chuyeån ñoåi chuoãi sang kieåu chöõ hoaï: Select UPPER('Khang') Keát quaû traû veà nhö sau: KHANG Haøm LOWER: Haøm naøy chuyeån ñoåi chuoãi sang kieåu chöõ thöôøngï: Select LOWER('Khang') Keát quaû traû veà nhö sau: khang Haøm Len: Haøm naøy traû veà chieàu daøi cuûa chuoãi: Select len('I Love You') Keát quaû traû veà nhö sau: 10 Thuû tuïc LTRIM: Thuû tuïc loaïi boû khoaûng traéng beân traùi cuûa chuoãiï: Select ltrim(' Khang') Keát quaû traû veà nhö sau: 'khang' Giaùo vieân: Phaïm Höõu Khang
  11. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Thuû tuïc RTRIM: Thuû tuïc loaïi boû khoaûng traéng beân phaûi cuûa chuoãiï: Select ltrim('Khang ') Keát quaû traû veà nhö sau: 'khang' Haøm Left: Haøm traû veà chuoãi beân traùi tính töø ñaàu cho ñeán vò trí thöù n: Select left('Khang',3) Keát quaû traû veà nhö sau: 'Kha' Haøm Right: Haøm traû veà chuoãi beân phaûi tính töø cuoái cho ñeán vò trí thöù n: Select Right('KHang',4) Keát quaû traû veà nhö sau: 'Hang' Haøm Instr: Haøm traû veà vò trí chuoãi baét ñaàu cuûa chuoãi con trong chuoãi xeùt: Select INSTR ('Khang','Pham Huu Khang') Keát quaû traû veà nhö sau: 11 11 laø töông ñöông vò trí thöù 11 cuûa chöõ Khang trong chuoãi "Pham Huu Khang" 5.3.3. Caùc haøm veà xöû lyù thôøi gian Haøm CurDate(): Haøm traû veà ngaøy, thaùng vaø naêm hieän haønh cuûa heä thoáng: Select curdate() as 'Today is’ Keát quaû traû veà nhö sau Today is --------------------------- 2001-11-21 Haøm CurTime(): Haøm traû veà giôø, phuùt vaø giaây hieän haønh cuûa heä thoáng: Select curtime() as 'Time is’ Keát quaû traû veà nhö sau Time is --------------------------- 09:12:05 Haøm Period_Diff: Haøm traû veà soá ngaøy trong khoaûng thôøi gian giöõa 2 ngaøyï: Select Period_diff (OrderDate, getdate()) Giaùo vieân: Phaïm Höõu Khang
  12. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM as 'So ngay giua ngay thu tien ñen hom nay:' from tblOrders Keát quaû traû veà nhö sau So ngay giua ngay thu tien ñen hom nay: --------------------------------- 74 72 Haøm dayofmonth: Haøm dayofmonth traû veà ngaøy thöù maáy trong thaùng: Select dayofmonth(curdate()) as 'hom nay ngay Keát quaû traû veà nhö sau: 21 Ngoaøi caùc haøm trình baøy nhö treân, baïn coù theå tìm thaáy nhieàu haøm xöû lyù veà thôøi gian trong phaàn Funtions xuaát hieän beân phaûi maøn hình cuûa trình ñieàu khieån nhö hình 8-6. Hình 8-6: Söû duïng chöùc naêng Funcitons 5.3.4. Caùc haøm veà toaùn hoïc Haøm sqrt: Haøm traû veà laø caên baät hai cuûa moät bieåu thöùc: Select sqrt (4) Keát quaû traû veà laø Giaùo vieân: Phaïm Höõu Khang
  13. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM 2 Haøm Round: Haøm traû veà laø soá laøm troøn cuûa moät bieåu thöùc: Select round (748.58,-1) Keát quaû traû veà laø 7500 Ñeå tham khaûo theâm moät soá haøm khaùc baïn coù theå tham khaûo trong phaàn Functions nhö hình 8-9. 5.4. Phaùt bieåu SQL daïng Select vôùi AS Khi caàn thieát phaûi thay ñoåi teân tröôøng naøo ñoù trong caâu truy vaán, baïn chæ caàn duøng phaùt bieåu AS. AS cho pheùp aùnh xaï teân cuõ, hay giaù trò chöa coù teân thaønh teân môùi (header). Ví duï, khi söû duïng GROUP BY ôû trong phaàn treân, nhöõng coät taïo ra töø caùc pheùp toaùn count, sum, max, min, ... cho ra keát quaû khoâng coù header, nghóa laø khoâng coù teân coät ñeå tham chieáu trong khi goïi ñeán chuùng. Chuùng ta phaûi caàn phaùt bieåu AS cho nhöõng tröôøng hôïp naøy. Ví duï 4-11: SQL daïng SELECT vôùi AS vaø caùc haøm Select CustID, Count (CustID) as No, Sum(Amount) as TIENHD, Max(Amount) as HDLONNHAT, Min(Amount) as HDNHONHAT, Avg(Amount) as TRUNGBINH From tblOrders Group by CustID Order by CustID Keát quaû hieån thò nhö sau: CustID No TIENHD HDLONNHAT HDNHONHAT TRUNGBINH ---------- ----------- ------------------------ 16 7 2956562368 1.95713899 26000 422366052 12 9 3843022604 39879489 459162 427002511 13 8 145913378 1.36727628 230000 18239172.25 10 4 72382804 48168567 2903576 18095701 5.5. Phaùt bieåu SQL daïng Select vôùi Limit N , M Phaùt bieåu SQL daïng SELECT cho pheùp truy luïc chæ moät soá maåu tin tính töø vò trí thöù n ñeán vò trí thöù m trong Table (theo moät tieâu chuaån hay saép xeáp naøo ñoù). Ñeå laøm ñieàu naøy, trong phaùt bieåu SQL daïng SELECT baïn duøng chæ ñònh töø khoaù LIMIT vôùi soá löôïng maåu tin caàn laáy töø vò trí thöù n ñeán m. Chaúng haïn, trong tröôøng hôïp baïn khai baùo Select * from tblOrders limit 0,10. Keát quaû seõ traû veà 10 maåu tin ñaàu tieân trong baûng tblOrders. Baïn cuõng coù theå söû duïng keát hôïp LIMIT vôùi caùc meänh ñeà nhö WHERE, ORDER BY nhaèm taïo ra keát quaû nhö yù muoán. Do yeâu caàu khaùc nhau thoâng qua phaùt bieåu SQL daïng SELECT coù söû duïng LIMIT, nghóa laø keát quaû traû veà soá löôïng 10 maåu tin ñaàu tieân vôùi taát caû caùc coät trong baûng tblOrders Ví duï 8-12: Phaùt bieåu SQL daïng SELECT vôùi Limit N,M Giaùo vieân: Phaïm Höõu Khang
  14. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Select * From tblOrders Limit 0,10 Keát quaû traû veà nhö sau: OrderID OrderDate CustID Amount ---------- --------------------------- ------- 01 2001-09-05 10 2903576 02 2001-09-05 10 48168567 03 2001-09-05 10 5107032 04 2001-09-08 10 2.3555347 05 2001-09-08 16 1.81074847 06 2001-09-10 16 26000 07 2001-09-11 16 1867682 08 2001-09-12 16 3600000 09 2001-09-13 16 1.95713899 10 2001-09-14 16 9.61804228 Neáu muoán loïc ra 10 hôïp ñoàng coù soá tieàn nhieàu nhaát, baïn chæ caàn söû duïng saép xeáp theo coät TotalAmount hay Amount trong baûng tblOrders. Ví duï 8-13: Phaùt bieåu SQL daïng SELECT vôùi Limit N,M Select OrderID,OrderDate,CustID,Amount From tblOrders Order by Amount Desc Limit 0,10 Keát quaû traû veà nhö sau: OrderID OrderDate CustID Amount ---------- --------------------------- ------- 06 2001-09-10 16 26000 26 2001-09-13 13 230000 25 2001-09-11 13 244904 23 2001-09-11 12 459162 31 2001-09-16 13 459525 27 2001-09-14 13 603033 28 2001-09-15 13 1452000 30 2001-09-15 13 1531200 07 2001-09-11 16 1867682 01 2001-09-05 10 2903576 Neáu muoán loïc ra 10 saûn phaåm coù soá löôïng baùn nhieàu nhaát, baïn chæ caàn söû duïng saép xeáp theo coät soá löôïng Qtty. Ví duï 8-14: Phaùt bieåu SQL daïng Select vôùi Limit N,M Select ItemID,Qtty,Price,Amount from tblOrderDetails Where Amount>10 order by Qtty Limit 0,10 Keát quaû traû veà nhö sau: ItemID Qtty Price Amount --------------------------------------------- 1 900 12000 12960000 Giaùo vieân: Phaïm Höõu Khang
  15. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM 2 1000 12000 14400000 3 5000 12000 72000000 3 6000 12000 86400000 4 8000 12000 15200000 4 8000 12000 15200000 4 8000 10000 15200000 5 9000 12000 29600000 5 9000 12000 129600000 5 9000 12000 129600000 5.6. Phaùt bieåu SQL daïng SELECT vôùi DISTINCT Neáu coù moät hay nhieàu baûng keát noái vôùi nhau, seõ xaûy ra truøng laëp nhieàu maåu tin. Nhöng trong tröôøng hôïp naøy baïn chæ caàn laáy ra moät maåu tin trong taäp maåu tin truøng laëp, baïn söû duïng phaùt bieåu SQL daïng SELECT vôùi chæ ñònh DISTINCT. Ví duï 8-14: Phaùt bieåu SQL daïng SELECT Select ItemID,Qtty,Price,Amount from tblOrderDetails order by Qtty Keát quaû traû veà nhö sau: ItemID Qtty Price Amount ---------------------------------------------- 1 900 12000 12960000 2 1000 12000 14400000 3 5000 12000 72000000 3 6000 12000 86400000 4 8000 12000 115200000 4 8000 12000 115200000 4 8000 10000 115200000 5 9000 12000 129600000 5 9000 12000 129600000 5 9000 12000 129600000 ... ... Ví duï 8-15: Phaùt bieåu SQL daïng SELECT vôùi DISTINCT Select Distinct ItemID,Qtty,Price,Amount From tblOrderDetails Order by Qtty Keát quaû loaïi boû nhöõng maåu tin truøng laép nhö sau: ItemID Qtty Price Amount ---------------------------------------------- 1 900 12000 12960000 2 1000 12000 14400000 3 6000 12000 86400000 4 8000 12000 115200000 5 9000 12000 129600000 ... ... ... Giaùo vieân: Phaïm Höõu Khang
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2