PHP有內建函數,同樣的mySQL也有
內建函數主要是幫助我們做一些常用的基礎運算
常用的有AVG()、COUNT()、MAX()、MIN()、SUM()
接下來要說的是,我們有時候會需要做一些統計
例如計算會員的職業分布狀況,以利之後的廣告配送
這時候就會用到群組的概念GROUP BY
實際操作結果就像下面的圖片
[gallery ids="1680,1679" type="columns"]
藉由 GROUP BY 統計目標項目的數量
接下來要說的是排序
若是結合剛剛說的方法想計算每一本書的印製成本排序
查詢結合一個表格以上的欄位時,需以 「表格名.欄位名」表示
這個真的超重要,面試的時候常遇到這種問題!
有時候我們會需要在不同TABLE中查詢資料,例如
從訂單TABLE中取得訂單的客戶,並從客戶TABLE中取得個人資料
以上就從orders, books, customers三個TABLE分別找出符合
orders.ordersBook = books.booksNo 和
orders.ordersCustomer = customers.customersNo 條件的
ordersNo, booksName, customersName 三個欄位
為了識別TABLE所以用「表格名.欄位名」表示
使用升冪排列
MySQL常用的內建函數就介紹到這邊,以上基本的操作都介紹完了
接著就是把PHP和MySQL做結合啦!
內建函數主要是幫助我們做一些常用的基礎運算
常用的有AVG()、COUNT()、MAX()、MIN()、SUM()
AVG():計算平均
SELECT AVG(booksPrice) AS average FROM books;
COUNT():計算數量
SELECT COUNT(*) AS counting FROM customers;
MAX():最大值
SELECT MAX(booksPrice) FROM books;
MIN():最小值
SELECT MIN(booksPages) FROM books;
SUM():總和
SELECT SUM(booksPrice) FROM books;
接下來要說的是,我們有時候會需要做一些統計
例如計算會員的職業分布狀況,以利之後的廣告配送
這時候就會用到群組的概念GROUP BY
SELECT customersJob, COUNT(customersJob) AS counting
FROM customers GROUP BY customersJob;
意思是,從customers TABLE中選取customersJob
並且依據customersJob的分類群組起來後
計算customersJob的數量並設為counting印出
實際操作結果就像下面的圖片
[gallery ids="1680,1679" type="columns"]
藉由 GROUP BY 統計目標項目的數量
接下來要說的是排序
排序ORDER BY
SELECT * FROM books ORDER BY booksPrice;
價錢由低到高(ASC)
預設是使用升冪排列(ASC),若要使用降冪排列則是在最後加上DESC
SELECT * FROM books ORDER BY booksPrice DESC;
價錢由高到低(DESC)
若是結合剛剛說的方法想計算每一本書的印製成本排序
SELECT booksPages, booksPrice, booksPages/booksPrice AS cost
FROM books ORDER BY cost ASC;
跨表格查詢
查詢結合一個表格以上的欄位時,需以 「表格名.欄位名」表示
這個真的超重要,面試的時候常遇到這種問題!
有時候我們會需要在不同TABLE中查詢資料,例如
從訂單TABLE中取得訂單的客戶,並從客戶TABLE中取得個人資料
SELECT orders.ordersNo, books.booksName, customers.customersName
FROM orders, books, customers
WHERE orders.ordersBook = books.booksNo
AND orders.ordersCustomer = customers.customersNo
ORDER BY orders.ordersNo ASC;
以上就從orders, books, customers三個TABLE分別找出符合
orders.ordersBook = books.booksNo 和
orders.ordersCustomer = customers.customersNo 條件的
ordersNo, booksName, customersName 三個欄位
為了識別TABLE所以用「表格名.欄位名」表示
使用升冪排列
MySQL常用的內建函數就介紹到這邊,以上基本的操作都介紹完了
接著就是把PHP和MySQL做結合啦!
留言
張貼留言