Oracle - 单表查询相关

-- 单表查询

-- 查询表的所有数据, *代表所有
-- select * from [表名];

-- 查询表中指定字段的值
-- select [字段1], [字段2] ... from [表名];

-- 给查询结果中的字段使用别名
-- 在字段后面使用关键字 as ( 字段名 as "别名" ), 
-- as关键字可以省略不写, 别名中没有特殊符号的话, 双引号也可以不写
-- select [字段1] [空格] [别名], [字段2] as [别名] ... from [表名];

-- 连接符 || 
-- select ['字符'] || [字段] from [表名]
-- 连接的字符要用单引号, 一个拼接好的连接在结果集中是作为一个新的字段显示的, 可以用别名优化字段显示

-- 去除重复
-- select distinct [字段1], [字段2] from [表名]
-- 去除重复的规则是按照行进行去除的, 如果多行数据完全相同, 取其中一行

-- 排序 order by (升序ASC, 降序DESC)
-- 默认为升序, ASC可以省略不写
-- 单字段排序: select * from [表名] order by [要排序的字段] DESC;
-- 多字段排序: select * from [表名] order by [字段1] ASC, [字段2] DESC;
-- 先按照第一个字段进行排序, 如果第一个字段值相同, 则按照第二个字段排序, 以此类推

-- 字段的逻辑运算
-- 如果字段是数值类型的, 可以进行四则运算
-- select [字段]*2+100 as result from [表名]

-- 使用where进行查询筛选
-- 使用运算符进行筛选 : 等于(=), 大于(>), 大于等于(>=), 小于(<), 小于等于(<=), 不等于(!=或<>)
-- 如果条件中的值为字符, 必须用单引号
-- 多条件筛选: and(与), or(或)
-- select * from [表名] where 字段名 = 'xxx' and 字段名 > 5
-- select * from [表名] where 字段名 is null (筛选字段值为null)
-- select * from [表名] where 字段名 is not null (筛选字段值不为null)

-- like模糊查询: 查询包含指定字符的数据
-- _表示任意一个字符, %表示任意多个的任意字符, escape:将'\'变为转义字符
-- select * from [表名] where 字段名 like '_字符%' escape '\'

-- in : 查询字段的值为括号中各个值的数据
-- select * from [表名] where 字段名 in ('值1', '值2', 值3)

-- between and : 字段的值在值1和值2之间 (包含值1和值2)
-- select * from [表名] where 字段名 between '值1' and '值2'

猜你喜欢

转载自www.cnblogs.com/mpci/p/12095286.html