日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQL复习(w3school)笔记

發(fā)布時(shí)間:2024/1/17 数据库 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQL复习(w3school)笔记 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

SQL基礎(chǔ)

?


?

1.SQL對(duì)大小寫不敏感

2.DML(數(shù)據(jù)操作語言)與DDL(數(shù)據(jù)定義語言)

a)?DML

  • SELECT
  • UPDATE
  • DELETE
  • INSERT?INTO
  • b)?DDL

  • CREATE?DATABASE
  • ALTER?DATABASE
  • CREATE?TABLE
  • ALTER?TABLE
  • DROP?TABLE
  • CREATE?INDEX
  • DROP?INDEX
  • 3.DISTINCT:去除重復(fù)值

    a)?SELECT?DISTINCT?列名?FROM?表名

    4.WHERE子句

    a)?值得注意的運(yùn)算符?BETWEEN,?LIKE

    b)?文本值使用單引號(hào),數(shù)值不用

    5.ORDER?BY字句

    a)?DESC?降序

    b)?ASC?升序

    6.INSERT?INTO語句

    a)?語法

  • INSERT?INTO?table_name?VALUES?(val1,?val2?...)
  • INSERT?INTO?table_name(column1,?column2...)?VALUES?(val1,?val2?...)
  • 7.UPDATE語句

    a)?語法:?UPDATE?表名?SET?列名=新值?WHERE?列名=某值

    8.DELETE語句

    a)?語法:DELETE?FROM?表名?WHERE?列名=

    b)?刪除所有行?DELETE?FROM?table_name

    ?

    SQL高級(jí)

    ?


    ?

    1.TOP字句(MySQLLimit

    a)?返回記錄的條目數(shù)(對(duì)于有大量數(shù)據(jù)的表來說,非常有用)

  • SELECT?TOP?number|percent?column_name(s)?FROM?table_name
  • SELECT?column_name(s)?FROM?table_name?LIMIT?number
  • 2.通配符

    a)?%?替代一個(gè)或多個(gè)字符

    b)?_替代一個(gè)字符

    c)?[charlist]字符列中的任何單一字符

    d)?[^charlist][!charlist]不在字符列中的任何單一字符

    3.IN操作符

    a)?允許我們?cè)?span style="font-family:Calibri;">WHERE子句中規(guī)定多個(gè)值

    b)?SELECT?column_name(s)?FROM?table_name?WHERE?column_name?IN?(val1,?val2...)

    4.BETWEEN操作符

    a)?選取介于兩個(gè)值之間的數(shù)據(jù)范圍

    5.Alias(別名)

    a)?表別名?SELECT?column_name(s)?FROM?table_name?AS?alias_name

    b)?列別名?SELECT?column_names?AS?alias_name?FROM?table_name

    6.JOIN

    a)?用于根據(jù)兩個(gè)或多個(gè)表中的列之間的關(guān)系,從這些表中查詢數(shù)據(jù)

    b)?幾種SQL?JOIN

  • JOIN:表中至少一個(gè)匹配,則返回行
  • LEFT?JOIN:即使右表中沒有匹配,也從左表返回所有的行
  • RIGHT?JOIN:即使左表中沒有匹配,也從右表返回所有行
  • FULL?JOIN:只要其中一個(gè)表中存在匹配,就返回行
  • 7.INNER?JOIN(JOIN相同)

    a)?SELECT?column_name(s)?FROM?table_name1?INNER?JOIN?table_name2?ON?table_name1.column_name?=?table_name2.column_name

    8.LEFT?JOIN

    a)?SELECT?column_name(s)?FROM?table_name1?LEFT?JOIN?table_name2?ON?table_name1.column_name?=?table_name2.column_name

    b)?左表所有行會(huì)被列出

    9.RIGHT?JOIN

    a)?SELECT?column_name(s)?FROM?table_name1?RIGHT?JOIN?table_name2?ON?table_name1.column_name?=?table_name2.column_name

    b)?右表所有行會(huì)被列出

    10.FULL?JOIN

    a)?SELECT?column_name(s)?FROM?table_name1?FULL?JOIN?table_name2?ON?table_name1.column_name?=?table_name2.column_name

    b)?只要存在匹配就會(huì)返回行

    11.UNION操作符

    a)?用于合并兩個(gè)或多個(gè)SELECT語句的結(jié)果集(必須用相同數(shù)量的列,列必須擁有相似的數(shù)據(jù)類型,且列的順序必須相同)

    b)?SELECT?column_name(s)?FROM?table_name1?

    UNION

    SELECT?column_name(s)?FROM?table_name2

    c)?UNION?ALL?會(huì)列出重復(fù)值

    12.SELECT?INTO

    a)?從一個(gè)表中選取數(shù)據(jù),然后插入另一個(gè)表中

    b)?常用于創(chuàng)建表的備份復(fù)件或者用于對(duì)記錄進(jìn)行存檔

    c)?SELECT?*?INTO?new_table_name?[IN?externaldatabase]?FROM?old_tablename

    13.CREATE?DATABASE?database_name

    14.CREATE?TABLE

    a)?CREATE?TABLE?表名

    (

    列名1?數(shù)據(jù)類型,

    列名2?數(shù)據(jù)類型,

    ……

    )

    ?

    ?

    15.約束Constraints

    a)?NOT?NULL?不接受NULL

    b)?UNIQUE?唯一(可以有多個(gè)UNIQUE約束)

    c)?PRIMARY?KEY(主鍵)?僅有一個(gè)

    d)?FOREIGN?KEY?

  • 一個(gè)表中的FOREIGN?KEY指向另一個(gè)表中的PRIMARY?KEY
  • 用于預(yù)防破壞表之間連接的動(dòng)作
  • 防止非法數(shù)據(jù)插入外鍵列,因?yàn)樗仨毷撬幌氲哪莻€(gè)表中的值之一
  • e)?CHECK?用于限制列中的值得范圍

    f)?DEFAULT?用于向列中插入默認(rèn)值

    16.CREATE?INDEX?在表中創(chuàng)建索引

    a)?索引:在不讀取整個(gè)表的情況下,使數(shù)據(jù)庫應(yīng)用程序可以更快地查找數(shù)據(jù)

    b)?更新含有索引的表,更費(fèi)時(shí),所以合理的做法是靜靜在常被搜索的列(及表)上面創(chuàng)建索引

    c)?CREATE?INDEX?index_name?ON?table_name(column_name)

    d)?唯一索引(兩個(gè)列不能擁有相同索引值)CREATE?UNIQUE?INDEX?index_name?ON?table_name(column_name)

    17.DROP?刪除索引、表和數(shù)據(jù)庫

    18.TRUNCATE?TABLE?僅刪除表內(nèi)容不刪除表

    19.AUTO?INCREMENT

    20.VIEW(視圖)?基于SQL語句的結(jié)果集的可視化的表

    21.Date函數(shù)

    a)?MySQL?Date函數(shù)

  • NOW()?返回當(dāng)前日期和時(shí)間
  • CURDATE()?返回當(dāng)前的日期
  • CURTIME()?返回當(dāng)前的時(shí)間
  • DATE()?提起日期或日期/時(shí)間表達(dá)式的日期部分
  • EXTRACT()?返回日期/時(shí)間的單獨(dú)部分
  • DATE_ADD()?給日期添加指定的時(shí)間間隔
  • DATE_SUB()?從日期減去指定的時(shí)間間隔
  • DATEDIFF()?返回兩個(gè)日期之間的天數(shù)
  • DATE_FORMAT()?用不同格式顯示日期/時(shí)間
  • b)?SQL?Server?Date函數(shù)

  • GETDATE()?返回當(dāng)前日期和時(shí)間
  • DATEPART()?返回日期/時(shí)間的單獨(dú)部分
  • DATEADD()?在日期中添加或減去指定的時(shí)間間隔
  • DATEDIFF()?返回兩個(gè)日期之間的時(shí)間
  • CONVERT()?用不同的格式顯示日期/時(shí)間
  • c)?MySql?Date數(shù)據(jù)類型

  • DATE?YYYY-MM-DD
  • DATETIME?YYYY-MM-DD?HH:MM:SS
  • TIMESTAMP?YYYY-MM-DD?HH:MM:SS
  • YEAR?YYYY/YY
  • SQL?Server?Date數(shù)據(jù)類型
  • DATE?YYYY-MM-DD
  • DATETIME?YYYY-MM-DD?HH:MM:SS
  • SMALLDATETIME?YYYY-MM-DD?HH:MM:SS
  • TIMESTAMP??唯一的數(shù)字
  • d)?如果您希望使查詢簡單且更易維護(hù),那么請(qǐng)不要在日期中使用時(shí)間部分!

    22.NULL

    a)?測(cè)試NULL

  • IS?NULL
  • IS?NOT?NULL
  • 23.NULL函數(shù)

    a)?MySQL用?IFNULL?和?COALESCE函數(shù)

    24.數(shù)據(jù)類型http://www.w3school.com.cn/sql/sql_datatypes.asp

    25.SQL服務(wù)器-RDBMS

    ?

    轉(zhuǎn)載于:https://www.cnblogs.com/andriy2012/p/5455713.html

    總結(jié)

    以上是生活随笔為你收集整理的SQL复习(w3school)笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。