数据库应用

alter table 现有表名 rename 新表名 :更改数据库表名

alter table 表名 change 列名 新列名 数据类型 :修改列名

alter table 表名 add 列名 数据类型:添加字段

alter table 表名 drop 列名:删除字段

主键:确定数据的唯一性

添加主键的方法

create table 表名 (

        id int

        ......

        primary key(id)

);

create table 表名(

        id int primary key,

....

alter table 表名 add primary key(id);

主键自增

create table 表名(

id int auto_increment;

primary key(id);

alter table 表名 modify 主键列名 类型 auto_increment

外键

create table student1 (

    id int ,

    name varchar(20),

    teacher_id int,

    primary key (id)

);

create table teacher1(

    id int ,

    name varchar(20),

    primary key (id)

);

 alter table 表名 add foreign key (外键列列名) references 指向的表名 (主键列列名);、、

条件判断

where 判断条件

and 并且 or 或者  and的优先级比or的高

判断是否为空的语句是 is not null;

between......and......

between 数值1 and 数值2;:在数值1和数值2直接 包括

in 指定数据

模糊查询 like

%是匹配任意个字符

_匹配单个字符  如果要查询%或者_的时候 需要加\来转义

order by 列名 asc(升序)/desc(降序)

limit  通常和order by一起用 limit 开始值(不包括),条数

分组关键词 group by

常用的函数有:

count(*)总条数

max(字段名) 最大值

min(字段名) 最小值

avg(字段名)平均值

sum(字段名)总和

having 过滤  可以做where做不了的

having avg>70;就可以过滤平均值大于70分的

常用函数:

select version() ;显示当前MySQL软件的版本
select database();显示当前所处数据库是哪个
select  char_length('中国');返回字符个数。
select  length('中国');返回字符所占字节数,MySQL中,一个UTF8编码的汉字占3个字节
select  concat(  'a',  'b',  'c',  'd');返回  'abcd'。字符串拼接函数
select  concat_ws(  '=',  'a',  'b',  'c');返回  'a=b=c'。字符串拼接函数,第一个是拼接间隔符
select   upper('abcd');返回ABCD。将参数中所有小写字母转换为大写
select  lower('ABCD');返回abcd。将参数中所有大写字母转换为小写
select  substring(  '系统信息类',  1,  3  );返回  系统信。第2个参数代表从1开始的第几个字符,第3个参数代表截取字符个数
select  trim('  abc  ');返回 abc。用于删去参数左右的所有空格
select  curdate();返回当前日期
select  curtime();返回当前时间
select  now();返回当前日期时间
select  unix_timestamp();返回当前日期时间对应的时间戳(单位秒)
select  unix_timestamp('2018-05-24 20:00:00');返回参数指定的日期时间对应的时间戳(单位秒)
select  from_unixtime(1527163397);返回参数指定时间戳(单位秒)对应的日期时间
select  datediff(  '2018-05-23',  now()  );返回两个参数对应日期相差的天数(用第一个参数减第二个参数)
select  adddate( now(), -2 );返回指定天数前/后的日期时间(第一个参数是日期时间,第二个参数是天数,向后加是正数,向前减是负数)
select year('2019-02-24');返回2019 获得年份
select month('2019-02-24')  返回2 获得月份
select day('2019-02-24')  返回 24 获取日
select  if(  <判断条件>,  <条件为真时的返回值>,  <条件为假时的返回值>  );相当于Java中的三目运算符<判断条件>  ?  <条件为真的返回值>  :  <条件为假的返回值>。
如select  if(1=1,  2,  3);返回2。
select  ifnull(<表达式或者字段>,  <表达式或者字段为NULL时的返回值>);通常用于给有可能有NULL的情况下的提供默认值。
select ifnull(null,'无名氏') ; null这里可以写列名 就会把该列值为null的 以无名氏显示
select ifnull(name,'无名氏') from teacher ;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值