MySQL必知必會1 5章總結

2021-08-03 16:47:33 字數 2078 閱讀 4784

describe customers; 是show columns from customers;的一種快捷方式。

show status,用於顯示廣泛的伺服器狀態資訊。

show create database和show create table,分別用來顯示建立特定資料庫或表的mysql語句。

show grants用來顯示授予使用者(所有使用者或者是特定使用者)的安全許可權。

show errors 和show warnings,用來顯示伺服器錯誤或者是警告資訊。

sql語句是由簡單的英文單詞構成的,這些單詞稱為關鍵字,每個sql語句都是又乙個或者是多個關鍵字組成的。

select語句

select語句的作用是從乙個或者多個表中檢索資訊。使用時至少給出兩條資訊——想選擇什麼,以及從什麼地方進行選擇。

如果沒有明確排序查詢結果,則返回的資料的順序沒有特殊含義,可能是資料被新增到表中的順序,也可能不是。但只要返回相同數目的行,就是正常的。

sql語句不分大小寫,select和select和select是相同的。

許多sql開發人員喜歡對所有的sql關鍵字使用大寫,而對所有的列和表名使用小寫,使**更容易閱讀和維護。

在用select 選擇多個列時,一定要在列名之間加上逗號,當然最後乙個列名之後不加。

select prod_id,prod_name,prod_price from products;

sql語句一般是返回原始的無格式的資料。資料的格式化是乙個表示問題,而不是乙個檢索問題。表示一般是在顯示該資料的應用程式中規定,一般很少使用檢索出的原始資料。

檢索所有的列而不必逐個表示它們:

select * from products;
如果給定乙個萬用字元(*),則返回表中的所有的列。一般不使用,因為檢索不需要的列通常會降低檢索和應用程式的效能。優點是能檢索出名字未知的列。

distinct

select distinct vend_id from products;

告訴mysql只返回不同的vend_id行

limit

select prod_name from products limit 5;
limit 5指示mysql返回不多於5行

為了得出下乙個5行,我們可以使用

select prod_name from products limit 5,5;
limit 5,5指示mysql返回從行5開始的5行。第乙個數為開始位置,第二個數為要檢索的行數。帶乙個值得limit總是從第一行開始,給出的數為返回的行數,帶兩個值的limit可以指定從行號為第乙個值得位置開始。

mysql 5支援limit的另外一種替代語法,

limit 4

offset

3 等同於 limit 3,4

排序檢索資料

關聯式資料庫設計理論認為,如果不明確規定排序順序,則不應該假定檢索出的資料的順序有意義。

order by 子句取乙個或者是多個列的名字,據此對輸出進行排序。

為了按照多個列排序,只要指定列名,列名之間用逗號隔開即可。此時排序完全按照所規定的順序進行,如果pro_price列中所有的值是唯一的,則不會按照prod_name排序。

為了進行降序排序,必須指定使用desc關鍵字。

···order by prod_price desc;

下面的例子以降序排序產品的(最貴的在前面),然後再對產品名排序:

···order by prod_price desc,prod_name;

desc關鍵字只應用到直接位於其前面的列名,如果想在多個列上進行降序排序,必須對每個列指定desc關鍵字。

乙個實際用例:使用order by和limit的組合,找出最昂貴物品的值:

select prod_price from products order

by prod_price desc limit 1;

MySQL必知必會 第15章 連線表

連線表的關鍵在於 1 規定要連線起來的所有表 2 表之間如何關聯。student表如下所示 scoretable如下所示 1.通過兩個表的id number欄位將兩個表連線起來 select student.id,student.name,scoretable.score from student,...

mysql必知必會 mysql必知必會(四)

十四 理解子查詢 1 通過子查詢過濾 這本書在所有的章節都關連到了資料庫表,訂單資料是儲存在兩個表中,orders表儲存著 訂單號碼 顧客id和訂單日期。個人的訂單列表關連著orderitems表,訂單表沒有儲存顧客資訊,它只是儲存著顧客id,這實際的顧客資訊是儲存在customers表中。現在假設...

《MySQL必知必會》(7 11章)學習總結

過濾語句是在where語句內進行的,和操作符and or in not 配合使用。關鍵字可以將表中不同的過濾條件進行組合,篩選出我們需要的資料。select prod id,prod price,prod name from products where vend id 1003 and prod ...