mysql學習——基本語句

一、mysql在windows上不區分大小寫,在linux上嚴格區分大小寫。
mysql

二、語句後必選加分號linux


建立數據庫test算法

查看數據庫sql

使用數據庫數據庫

刪除數據庫windows

create database test;安全

show databases;服務器

use test;函數

drop database test;加密

建立一個表test_01

(是否爲空,是否有默認值,是否自增,是否爲主鍵)

create table test_01(

id varchar(50) not null auto_increment primary key,

name nvarchar(40) null default "002",

age int(5)null default 444);

INSERT INTO 表名(字段名,字段名) VALUES (值,值)
DELETE FROM 表名 WHERE 條件
UPDATE 表名 SET 字段=值,字段=值 WHERE 條件
SELECT 字段,字段 FROM 表名 WHERE 條件
查table show tables [from db_name] [like wild] 

修改表結構(alter)

添加列(age)

修改列

刪除列

給列更名

給表更名

刪除表


alter table table_name add age int

alter table table_name modify age varchar(50);

alter table table_name drop age;

alter table table_name change old new int;

alter table table_name_old rename table_name_new

drop table table_name

查詢排序(asc升序,desc降序) SELECT 字段,字段 FROM 表名 WHERE 條件 order by age asc;


基本數據類型:

int
-2147483648到2147483648
float
單精 float(5,2)四捨五入保留兩位小數
double 雙精
decimal 自定義精度
char
0到255

varchar 0到255長度可變
text 不區分大小寫

blod 區分大小寫

showtime time,

birthday date,

graduation year

'12:02:02',

'2000-02-02',

2002

120202,

20000202,

02


查詢格式:

select selection_list  //選擇哪些列

from table_list  //從何處選擇行

where primary_constraint  //行必須知足什麼條件

group by grouping_columns // 怎樣對結果分組

having secondary_constraint  //行必須知足的第二條件

order by sorting_columns //怎樣對結果排序

limit count  //結果限定


數學函數:

  1. ABS(x);//返回x的絕對值

  2. ACOS(x);//返回x(弧度)的反餘弦值

  3. ASIN(x);//返回x(弧度)的反正弦值

  4. ATAN(x);//返回x(弧度)的反正切值

  5. CEILING(x);//返回大於x的最小整數值

  6. COS(x);//返回x(弧度)的餘弦值

  7. COT(x);//返回x(弧度)的餘切

  8. DEGREES(x);//返回弧度值x轉化爲角度的結果

  9. EXP(x);//返回值e(天然對數的底)的x次方

  10. FLOOR(x);//返回小於x的最大整數值

  11. GREATEST(x1,x2,x3...);//返回集合中最大的值

  12. LEAST(x1,x2,x3,,,);//返回集合中最小的值

  13. LN(x);//返回x的天然對數

  14. LOG(x,y);//返回x的以y爲底的對數

  15. MOD(x,y);//返回x/y的模(餘數)

  16. PI();//返回pi的值(圓周率)

  17. POW(x,y)或者POWER(x,y);//返回x的y次冪

  18. RAND();//返回0到1內的隨機數

  19. RADIANS(x);//返回角度x轉化爲弧度的結果

  20. ROUND(x,y);//返回參數x的四捨五入的有y位小數的值

  21. SIGN(x);//返回表明數字x的符號的值

  22. SQRT(x);//返回x的開方

  23. SIN(x);//返回x(弧度)的正弦值

  24. TAN(x);返回x(弧度)的正切值

  25. TRUNCATE(x,y);//返回數字x截短爲y位小數的結果


聚合函數:

  1. AVG(col);//返回指定列的平均值

  2. COUNT(col);//返回指定列中非null值的個數

  3. MIN(col);//返回指定列的最小值

  4. MAX(col);//返回指定列的最大值

  5. SUM(col);//返回指定列的全部值之和

  6. STD(col)或STDDEV(col);//返回指定列的全部值的標準誤差

  7. VARIANCE(col);//返回指定列的全部值的標準方差

  8. GROUP_CONCAT(col);//返回由屬於一組的列值鏈接組合而成的結果


日期&時間:

    select now();//返回當前時間

    select curdate();//當前日期,格式爲 YYYY-MM-DD

    select curtime();//當前時間,格式爲 HH:MM:SS


加密函數:

  1. AES_ENCRYPT(str,key);//返回使用密鑰key對字符串str利用高級加密標準算法加密後的結果

  2. AES_DECRYPT(str,key);    //返回使用密鑰key對字符串str利用高級加密標準算法解密後的結果

  3. DECODE(str,key);//使用key做爲密鑰解密加密字符串str

  4. ENCRYPT(str,salt);//使用UNIX crypt()函數,用關鍵詞salt加密字符串str

  5. ENCODE(str,key);//使用key做爲密鑰加密字符串str

  6. MD5();//計算字符串str的MD5校驗和

  7. PASSWORD(str);//返回字符串str的加密版本

  8. SHA();//計算字符串str的安全散列算法(SHA)校驗和


格式化函數:

  1. date_format(date,fmt);//依照字符串fmt格式化日期date的值

  2. format(x,y);//把x格式化爲以逗號隔開的數字序列,y是結果的小數位數

  3. inet_aton(ip);//返回ip地址的數字表示

  4. inet_ntoa(num);//返回數字所表明的ip地址

  5. time_format(time,fmt);//依照字符串fmt格式化時間time值


系統信息:

  1. database();//返回當前數據庫名稱

  2. benchmark(count,expr);//將表達式expr重複運行count次

  3. connection_id();//返回當前客戶的鏈接id

  4. found_rows();//將最後一個select查詢(沒有以limit進行限制結果)返回的記錄行數返回

  5. get_lock(str,dur);//獲取一個由字符串str命名的而且有dur秒延時的鎖定

  6. is_free_lock(str);//檢查以str命名的鎖定是否釋放

  7. last_insert_id();//返回由該系統自動產生的最後一個auto increment id的值

  8. master_pos_wait(log,pos,dur);//鎖定主服務器dur秒直到從服務器與主服務器的日誌log指定的位置pos同步

  9. release_lock(str);//釋放由字符串str命名的鎖定

  10. user()/system_user();//返回當前登陸用戶名

相關文章
相關標籤/搜索