SQL基础学习笔记

发布 2021-05-02 03:29:28 阅读 1696

选择bank_card表中的所有列数据。

select * from bank_card

对列内容进行筛选。

select * from bank_card where bank_name='农业银行'

选择部分列并指定它们的显示次序。

select bank_card_name,bank_name from bank_card

更改列标题(如果指定的列标题不是标准的标识符格式时,应使用引号定界符)

select '卡名称'=bank_card_name,'银行名称'=bank_name from bank_card

select bank_card_name '卡名称',bank_name '银行名称' from bank_card

限制返回的行数。

前10行所有列。

select top 10 * from bank_card

前10%行所有列。

select top 10 percent * from bank_card

前10行指定列。

select top 10 bank_card_name,bank_name from bank_card

前10%行指定列并更换列名。

select top 10 percent '卡名称'=bank_card_name,'银行名称'=bank_name from bank_card

从两张表中筛选特定列(在from子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列所属的表或视图)

select bank_card_name,bank_fin_

from bank_card,bank_fin_fee

where bank_

如果没有where条件句则显示行数=bank_card_name行数*bank_fin_行数)

对多张表定义别名后筛选特定列。

select bank_card_name,

from bank_card a,bank_fin_fee b

where

联合打开(去掉all则自动去重)

新闻主表 (news_main)通过新闻标识(guid)关联人物关联表(news_people);

人物关联表(news_people)通过人物id(people_id)关联人物词表(news_people_ref)

from后面要列完整涉及到的所有**,即使在select后面需要显示的列中不涉及到该**。

优先级由高到低为:not、and、or,可以使用括号改变优先级。

desc为降序,asc为升序,缺省时为升序。order by子句必须出现在其他子句之后,且order by句子后边的序列必须出现在select后面。

order by后面也可以跟多列作为排序的依据,靠近order by的优先。

group by 分类汇总。

按日期分类汇总。

在完成任何分组之前,将消除不符合 where 子句中的条件的行。若在分组后还要按照一定的条件进行筛选,则需使用h**ing子句。(如果 h**ing 中包含多个条件,那么这些条件将通过and、or 或 not 组合在一起)

列运算(可跨**)

compute与compute by

用cube分类汇总(与group by搭配使用)

给数据排序并标序号。

用partition by分组后排序。

ntile 平均排序函数。

用with…as设置临时集方便再次调用。

注:临时集tm如果要用作公用表表达式,需要使用分号显式终止以前的语句。

SQL学习笔记

目录。1 数据库创建 1 2 创建表 1 3 表结构查询 2 4 在表中增加列 3 5 修改列的约束属性 3 6 使用insert into 语句添加数据 3 7 使用 select into 添加相关的数据到一个新表中 4 8 间接修改列为非空值的办法 4 9 更为完善的create table ...

SQL学习笔记

where子句。比较运算符 范围说明 between a and b,not between a and b.可选值列表 in not in 一般用于嵌套查询。模式匹配 like not like 是否空值 is null is not null 上述条件的逻辑组合 and or not 内容大小写...

SQL学习笔记

增加记录。在使用sql数据库的时候,我们也许会需要一次像数据库中添加多条记录,那么我们可以使用sql语句来实现,该语句具体如下 添加一条记录。insert into tablename col1,col2,col3 values 1,2,3 添加多条记录。insert into tablename ...