mysql查詢資料

來源:互聯網
上載者:User

標籤:having   com   指定   尋找   blog   擷取資料   employees   分享   列表   

select

  使用SELECT語句從表或視圖擷取資料.

  

 

2.解釋

  • SELECT之後是逗號分隔列或星號(*)的列表,表示要返回所有列。
  • FROM指定要查詢資料的表或視圖。
  • JOIN根據某些串連條件從其他表中擷取資料。
  • WHERE過濾結果集中的行。
  • GROUP BY將一組行組合成小分組,並對每個小分組應用彙總函式。
  • HAVING過濾器基於GROUP BY子句定義的小分組。
  • ORDER BY指定用於排序的列的列表。
  • LIMIT限制返回行的數量。

 

3.select * 的問題

  • 使用星號(*)可能會返回不使用的列的資料。 它在MySQL資料庫伺服器和應用程式之間產生不必要的I/O磁碟和網路流量。
  • 如果明確指定列,則結果集更可預測並且更易於管理。 想象一下,當您使用星號(*)並且有人通過添加更多列來更改表格式資料時,將會得到一個與預期不同的結果集。
  • 使用星號(*)可能會將敏感資訊暴露給未經授權的使用者

 

4.DISTINCT子句

  從表中查詢資料時,可能會收到重複的行記錄。為了刪除這些重複行,可以在SELECT語句中使用DISTINCT子句。

  SELECT DISTINCT      columns  FROM      table_name  WHERE      where_conditions;

  舉例/:  

    SELECT lastname FROM employees ORDER BY lastname;

    

    select distinct lastname from employees order by lastname;

    

 

5.distinct子句對NULL的處理

  會將NULL作為相同的資料,留下一個NULL。

  select distinct state from customers;

 

6.distinct在多列上的使用

  可以使用具有多個列的DISTINCT子句。 在這種情況下,MySQL使用所有列的組合來確定結果集中行的唯一性。

  select distinct state,city from customers where state is not null order by state,city;

  

 

7.distinct與order by比較

  如果在SELECT語句中使用GROUP BY子句,而不使用彙總函式,則GROUP BY子句的行為與DISTINCT子句類似。

  這個其實適合一列的。  

  一般而言,DISTINCT子句是GROUP BY子句的特殊情況。 DISTINCT子句和GROUP BY子句之間的區別是GROUP BY子句可對結果集進行排序,而DISTINCT子句不進行排序。

  如果將ORDER BY子句添加到使用DISTINCT子句的語句中,則結果集將被排序,並且與使用GROUP BY子句的語句返回的結果集相同。

  

 

 8.distinct與彙總函式

  可以使用具有彙總函式(例如SUM,AVG和COUNT)的DISTINCT子句中,在MySQL將彙總函式應用於結果集之前重複資料刪除的行。

  select count(distinct state) from customers where country=‘USa‘;

  

 

9.distinct與limit一起使用

  如果要將DISTINCT子句與LIMIT子句一起使用,MySQL會在尋找LIMIT子句中指定的唯一行數時立即停止搜尋。

  

 

mysql查詢資料

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.