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();//返回当前登陆用户名

相关文章
相关标签/搜索