zoukankan      html  css  js  c++  java
  • 数据库中常用的一些关键字

    1.distinct 用来查询不重复记录的条数,可以是单个字段去重、也可以是多个字段去重,但是不能与all同时使用并且不能在insert、delete、update中使用

    select distinct column1 from table_name;

    2.where 子句用于提取那些满足指定条件的记录

    select column1,column2,... from table_name where column_name .....

    有一些常用运算符

    =等于、<>不等于、>大于、 <小于、 >=大于等于、 <=小于等于、 between在某个范围内、 like搜索某种模式、 in指定针对某个列的多个可能值

    3.and & or

    select * from table_name where column1=value1 and column2=value2;

    select * from table_name where column1=value1 or column2=value2;

    4.order by 用于对结果集进行排序,默认为ASC升序,DESC降序

    5.insert into语句用于向表中插入新纪录

    insert into table_name(column1,column2,...) values(value1,value2,...);

    6.update语句用于更新表中的记录

    update table_name set column1=value1,...  where  some_column=some_value;

    7.delete语句用于删除表中的记录

    delete from table_name where some_column=some_value;

    8.top、limit、rownum

    select top number|percent column_name from table_name where [condition];

    例如:==SQL server/Acess中== select top 2 * from student; ==等价于mysql中== select * from student limit 2; ==等价于oracle中== select * from student where rownum<=2;

    9.like操作符用于在where子句中搜索列中的指定模式

    select column_name(s) from table_name where column_name like pattern; 注意需要用到%

    10.in操作符用于在where子句中规定多个值

    select column_name(s) from table_name where column_name in (value1,value2,...);

    11.between用于选取介于两个值之间的数据范围内的值

    select column_name(s) from table_name where column_name between value1 and value2;

    12.inner join在表中存在至少一个匹配时返回行=========等同于join

    select column_name(s) from table1 inner join table2 on table1.column_name=table2.column_name;

    13.left join关键字从左表返回所有的行,即使右表中没有匹配,结果以nul显示=========也可以称为left outer join

    select column_name(s) from table1 left join table2 on table1.column_name=table2.column_name;

    14.right join关键字从右表返回所有的行,即使左表没有匹配,结果以null显示=========也可以称为right outer join

    select column_name(s) from table1 right join table2 on table1.column_name=table2.column_name;

    15.full outer join关键字只要左表和右表其中一个表中存在匹配,则返回行

    select column_name(s) from table1 full outer join table2 on table1.column_name=table2.column_name;

    16.union操作符合并两个或多个select语句的结果**********union只会选取不同的值,union all会选取所有的值,包括重复的值

    select column_name(s) from table1

    union/union all

    select column_name(s) from table2;//******两个select语句必须有相同数量的列,列也必须有相似的数据类型,而且列的顺序也必须相同****//

    17.select into语句从一个表复制数据,然后插入到另一个表中******但是两个表的结构和数据类型完全一致

    select column_name(s) into new_table from old_table;

    18.insert into select语句从一个表复制数据,把数据插入到一个已存在的表中,目标表中任何已存在的行都不会受影响

    insert into table2(column_name(s)) select column_name(s) from table1;

    19.create database语句用于创建数据库

    create database dbname;

    20.create table语句用于创建数据库中的表

    create table table_name

    {

    column_name1 data_type(size),

    column_name2 data_type(size),

    ...

    };

    21.constraints约束用于规定表中的数据规则

    约束类型not null(指示某列不能存储null值)、unique(保证某列的每行必须有唯一的值)、primary key(not null和unique的结合)、foreign key(保证一个表中的数据匹配另一个表中的值的参照完整性)

    check(保证列中的值符合指定的条件)、default(规定没有给列赋值时的默认值)

    create table table_name

    {

    column_name1 data_type(size) constraints_name,

    column_name2 data_type(size) constraints_name,

    ...

    };

    22.index索引:以便于更加快速高效的查询数据

    create index index_name on table_name(column_name);

    23.drop用于删除索引、表和数据库

    drop index index_name on table_name;

    drop table table_name;

    drop database database_name;

    删除表内的数据,不删除表本身,使用truncate table table_name;

    24.alter table 用于在已有的表中添加、删除、修改列

    alter table table_name add column_name datatype;//添加

    alter table table_name drop column column_name;//删除

    alter table table_name modify column_name datatype;//更新

    25.auto increment会在新纪录插入表中时生成一个唯一的数字

    CREATE TABLE Persons
    (
    ID int NOT NULL AUTO_INCREMENT,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    PRIMARY KEY (ID)
    )

    在Oracle中必须通过sequence对象创建

    CREATE SEQUENCE seq_person
    MINVALUE 1
    START WITH 1
    INCREMENT BY 1
    CACHE 10

    insert into Persons(ID,FirstName,LastName) values(seq_person.nextval,'Lars','Monsen');

    26.view视图:是可视化的表,包含行和列,视图中的字段来自一个或多个数据库中的真实的表中的字段

    create view view_name AS select column_name(s) from table_name where condition ;

    create or replace view view_name as select column_name(s) from table_name where condition;

    drop view view_name;//删除视图

    27.date函数

    now() 返回当前的日期和时间、curdate()当前的日期、curtime()当前的时间、date()提取日期或时间表达式的日期部分、extract()返回日期/时间的单独部分、datediff()返回两个日期之间的天数、date_format()用不同的格式显示日期/时间

    28.avg()函数:返回数值列的平均值

    select avg(column_name) from table_name;

    29.count()函数:返回匹配指定条件的行数

    select count(column_name) from table_name;

    select count(distinct column_name) from table_name;

    30.first()函数:返回指定的列中第一个记录的值

    select first(column_name) from table_name;//只有MS Access支持first()函数

    select top 1 column_name from table_name order by column_name asc;//sql server用法

    select column_name from table_name order by column_name asc limit 1;//mysql用法

    select column_name from table_name order by column_name asc where rownum <=1;//oracle用法

    31.last()函数:返回指定列中最后一个记录的值

    select last(column_name) from table_name;//只有MS Access支持last()函数

    select top 1 column_name from table_name order by column_name desc;//sql server用法

    select column_name from table_name order by column_name desclimit 1;//mysql用法

    select column_name from table_name order by column_name desc where rownum <=1;//oracle用法

    32.max()函数:返回指定列中最大值

    select max(column_name) from table_name;

    33.min()函数:返回指定列中最小值

    select min(column_name) from table_name;

    34.sum()函数:返回数值列的总数

    select sum(column_name) from table_name;//理解为求和

    35.having子句可以筛选分组后的各组数据

    select column_name,aggregate_function(column_name) from table_name where column_name operator value group by column_name having aggregate_function(column_name) operator value;

    35.exists运算符用于判断查询子句是否有记录,如果有一条或多条返回true,否则false

    select column_name(s) from table_name where exists (select column_name from table_name where condition);

    36.ucase()函数:把字段的值转换为大写////upper()函数

    select ucase(column_name) from table_name;

    37.lcase()函数:把字段的值转换为小写/////lower()函数

    select lcase(column_name) from table_name;

    38.mid()函数:用于从文本字段中提取字符

    select mid(column_name,start[,length]) from table_name;

    39.len()函数:返回文本字段中值的长度

    select len(column_name) from table_name;

    select length(column_name) from table_name;//MySQL中的函数名称及用法

    40.round()函数:用于把数值字段舍入为指定的小数位数

    select round(column_name,decimals) from table_name;

    ***********round(x):返回参数x的四舍五入的一个整数

    ***********round(x,d):返回参数x的四舍五入的有d位小数的一个数字。

    41.now()函数:返回当前系统的日期和时间

    select now() from table_name;

    42.format()函数:用于对字段的显示进行格式化

    select format(column_name,format) from table_name;//column_name要格式化的字段,format规定格式

  • 相关阅读:
    window.open打开新的独立页面
    域名如何添加解析?
    URL 链接中的 UTM参数何定义?
    学习总结【匿名函数,匿名自执行函数】
    CSS布局之Flex布局
    CSS布局之display: tables布局
    CSS里盒子模型中【margin垂直方向边界叠加】问题及解决方案
    Hibernate 事务管理
    Hibernate 二级缓存
    Hibernate c3p0的整合
  • 原文地址:https://www.cnblogs.com/suyun0702/p/12849561.html
Copyright © 2011-2022 走看看