MySQL—基礎(SQL語句)

來源:互聯網
上載者:User

標籤:

SQL語句:

    DDL(Data Definition Languages)語句:資料定義語言 (Data Definition Language);操作對象:資料區段、資料庫、表、列、索引等。

    資料庫:

        建立:CREATE DATABASE dbname;

        刪除:DROP DATABASE dbname;

      表:

        建立:CREATE TABLE tablename(

                         id INT(5) auto_increment(自增關鍵詞) PRIMARY KEY,

                         name VARCHAR(20) NOT NULL);

        刪除:DROP TABLE tablename;

        修改:ALTER TABLE tablename RENAME new_tablename;(修改表名)

           ALTER TABLE tablename MODIFY name VARCHAR(10);(修改某列的屬性)

           ALTER TABLE tablename ADD column_name VARCHAR(20) [FIRST/(AFTER col_name)](作為插入的位置);(添加一列)

           ALTER TABLE tablename DROP col_name;(刪除一列)

           ALTER TABLE tablename CHANGE old_col_name new_col_name VARCHAR(20) [FIRST/(AFTER col_name)];(修改列名)

           (!CHANGE和MODEFY區別:CHANGE可以修改列名,MODIFY不可以,但是CHANGE兩次列名都得寫。)

     DML(Data Manipulation Languages)語句:資料操縱語句;操作對象:表的增刪查改

         增:INSERT INTO tablename(col1_name,col2_name) values(value1,value2);

         刪:DELETE FROM tablename [WHERE CONDITION];

         查:SELECT * FROM tablename;

         改:UPDATE tablename set col_name = ‘value‘ where id = 1;

         查詢升級版(還會更新):

            ONE:

              SELECT dep,COUNT(*)

              FROM tablename

              GROUP BY dep

              HAVING COUNT(*) >= 2;

            TWO:

              SELECT *

              FROM tablename

              WHERE col_name=‘abc‘

              LIMIT 0,2(0,2意為:從序號0開始後面的兩條資料,eg:2,2意為,從序號1開始後面的兩條)

              ORDER BY col_name DESC;

            THREE:

              SELECT *

              FROM tablename

              WHERE dep IN(

                      SELECT dep

                      FROM tablename_1);(!如果子查詢記錄數唯一,IN可以用“=”代替。)

            FOUR:

              SELECT dep FROM tablename

              UNION / (UNION ALL)

              SELECT dep FROM tablename_2

         知識點:表的串連查詢。

             WITH ROLLUP:對分類彙總的結果再匯總。

             HAVING和WHERE的區別:WHERE是彙總前進行條件式篩選,HAVING是彙總後進行條件式篩選,能用WHERE時優先使用WHERE這樣對查詢可以

                          做到一定的最佳化。

             UNION和UNION ALL的區別:UNION是將UNION ALL後的結果進行一次DISTINCT,去除重複記錄後的結果。

     DCL(Data Control Languages)語句:資料控制語言(開發人員很少使用);操作對象:資料許可、存取層級

         授權:GRANT SELECT,INSERT ON tablename.* TO ‘Z1‘@‘localhost‘ IDENTIFY BY ‘123‘;

         收回:REVOKE INSERT ON tablename.* FROM ‘Z1‘@‘localhost‘;

        知識點:中繼資料,為資料的資料,如表名列名等表的各種屬性名稱。

            information_schema資料庫就是用來記錄MySQL中的中繼資料資訊,此資料庫是一個虛擬資料庫,物理上並不存在相關的目錄和檔案,全部為視圖。

            視圖:

               SCHEMATA:所有資料庫資訊。

               TABLES:資料庫中的表資訊

               COLUMNS:表中的列資訊

               STATISTICS:表索引的資訊

     

           

MySQL—基礎(SQL語句)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.