1.多表查询 1)笛卡尔集: select * from 表名1,表名2 select * from 表名1.表名2 where 表名1.字段名=表名2.字段名 注: 若有两张表有同样名字的字段,则使用时需带表名(别名). order by 置于where 条件之后. 2)自连接:同一张表的连接查询.将一张表视为两张表或多张表. eg:显示公司每一个员工名字和他的上级的名字.将emp表看做两张表worker和boss select worker.ename 雇员,bos
select * from aa01_2014 where aaa001=(select c.p from (select aaa001,lag(aaa001,1,0) over (order by aaa001) as p from aa01_2014) c where c.aaa001='8a9299ec522f54f401522f81eedc0007') ; select * from aa01_2014 where aaa001=(select c.n from (select aa
1.返回所有数据库信息(数据库名,创建日期,存储路径等). use master; GO select * from dbo.sysdatabases 2.返回当前数据库所有对象(可根据type字段过滤出用户表,索引等). USE AdventureWorks2008R2; GO SELECT * FROM SYS.objects WHERE TYPE='U' 3.查询指定库中所有表信息(记录数,使用空间等). USE AdventureWorks2008R2; GO exec sp_MSF
oracle查询:取出每组中的第一条记录按type字段分组,code排序,取出每组中的第一条记录 方法一: select type,min(code) from group_info group by type; 注意:select 后面的列要在group by 子句中,或是用聚合函数包含,否则会有语法错误. 方法二: SELECT * FROM(SELECT z.type , z.code ,ROW_NUMBER()OVER(PARTITION BY z.type ORDER BY z.cod