1. 程式人生 > >Mysql學習---面試基礎知識點總結

Mysql學習---面試基礎知識點總結

drop let 分組 知識點總結 樣式 delet 基礎 order by count

1、drop、truncate、 delete區別

TRUNCATE TABLE 在功能上與不帶 WHERE 子句的 DELETE 語句相同:二者均刪除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系統和事務日誌資源少。

2、合並查詢有哪些?

union(並集去重復)、

union all(並集不去重復)、

intersect(交集)、

minus(差集)

3、SQL語句執行順序

關鍵字:select、from、join、on、where、group by、having、order by、distinct執行順序

1、from

2、join

3、on

4、where

5、group by 分組字段

6、having 表達式

7、select

8、distinct

9、order by

4、null的含義

在我們不知道具體有什麽數據的時候,也即未知,可以用NULL,我們稱它為空,ORACLE中,含有空值的表列長度為零。

ORACLE允許任何一種數據類型的字段為空,除了以下兩種情況:

1、主鍵字段(primary key),

2、定義時已經加了NOT NULL限制條件的字段

說明:

1、等價於沒有任何值、是未知數。

2、NULL與0、空字符串、空格都不同。

3、對空值做加、減、乘、除等運算操作,結果仍為空。

4、NULL的處理使用NVL函數。

5、比較時使用關鍵字用“is null”和“is not null”。

6、空值不能被索引,所以查詢時有些符合條件的數據可能查不出來,count(*)中,用nvl(列名,0)處理後再查。

7、排序時比其他數據都大(索引默認是降序排列,小→大),所以NULL值總是排在最後。

5、MySQL、SqlServer、oracle寫出字符存儲、字符串轉時間

1、在MySQL、SqlServer、oracle中兩個單引號代表字符

2、字符串轉時間

Oracle:使用to_date(‘字符串時間’, ‘yyyy-MM-dd HH24:mi:ss‘)函數

SqlServer:CONVERT(數據類型,日期值,日期樣式ID)

MySQL:date_format(日期值,‘%Y-%c-%d %h:%i:%s‘);

6、update語句可以修改結果集中的數據嗎?

在oracle中是可以的,在mysql中不可以。

如下語句:

update (select * from table1 t1 left join table2 t2 on t1.字段 = t2.字段 ) set 字段名 = 值 where 條件字段 = 條件值

Mysql學習---面試基礎知識點總結