使用一条sql查询多个表中的记录数

方法一:

 select t1.num1,t2.num2,t3.num3 from
  (select count(*) num1 from table1) t1,
  (select count(*) num2 from table2) t2,
  (select count(*) num3 from table3) t3

方法二:

select sum(t.num1),sum(t.num2),sum(t.num3) from (
    select count(*) num1,0 as num2,0 as num3 from table1
  union
    select 0 as num1,count(*) num2,0 as num3 from table2
  union
    select 0 as num1,0 as num2,count(*) num3 from table3
) t
时间: 2024-10-24 00:32:56

使用一条sql查询多个表中的记录数的相关文章

Sql Server删除数据表中重复记录 三种方法

本文介绍了Sql Server数据库中删除数据表中重复记录的方法. [项目]数据库中users表,包含u_name,u_pwd两个字段,其中u_name存在重复项,现在要实现把重复的项删除![分析]1.生成一张临时表new_users,表结构与users表一样:2.对users表按id做一个循环,每从users表中读出一个条记录,判断new_users中是否存在有相同的u_name,如果没有,则把它插入新表:如果已经有了相同的项,则忽略此条记录:3.把users表改为其它的名称,把new_use

简单按日期查询mysql某张表中的记录数

测试表表结构:mysql> show create table dr_stats\G 1. row Table: dr_stats Create Table: CREATE TABLE `dr_stats` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `views` int(10) NOT NULL DEFAULT '0' COMMENT '展示量', `num` mediumint(8) NOT NULL DEFAULT '0' CO

mysql一条sql查询多个表数据量

select (select count(*) from device0 where status != 0),(select count(*) from device1 where status != 0),(select count(*) from device2 where status != 0),(select count(*) from device3 where status != 0),(select count(*) from device4 where status != 0

oracle一条sql语句统计充值表中今天,昨天,前天三天充值记录

select NVL(sum(case when create_date_time>=to_date('2014-11-24 00:00:00','yyyy-mm-dd hh24:mi:ss') and create_date_time<=to_date('2014-11-24 23:59:59','yyyy-mm-dd hh24:mi:ss') then amount end),0) today ,NVL(sum(case when create_date_time>=to_date(

Sql Server中清空所有数据表中的记录

清空所有数据表中的记录: 代码如下:exec sp_msforeachtable  @Command1 ='truncate table ?'删除所有数据表: 代码如下:exec sp_msforeachtable 'delete   N''?'''清空SQL Server数据库中所有表数据的方法(有约束的情况) 其实删除数据库中数据的方法并不复杂,为什么我还要多此一举呢,一是我这里介绍的是删除数据库的所有数据,因为数据之间可能形成相互约束关系,删除操作可能陷入死循环,二是这里使用了微软未正式公

MySQL学习14:操作数据表中的记录(二)

四查询记录 MySQL数据库中对于数据表中的记录最常用的就是记录的查询,操作数据表中的记录大都是记录的查询.查找 记录的语法结构为: SELECT select_expr [,select_expr ...] [ FROM table_refereneces [WHERE where_condition] [GROUP BY {col_name | position } [ASC | DESC],...] [HAVING where_condition] [ORDER BY {col_name

一条SQL查询语句是如何执行的

一条SQL查询语句是如何执行的 下面是MySql的基本架构示意图,从图中可以清楚地看到SQL语句在MySQL的各个功能模块中的执行过程. 大体来讲,MySQL可以分为Server层和存储引擎层两部分. Server层 Server层包括连接器.查询缓存.分析器.优化器.执行器等,涵盖了MySql的大多数核心服务功能以及所有的内置函数,所有跨存储引擎的功能都在这一层实现,比如存储过程.触发器.视图等. 存储引擎层 而存储引擎层负责数据的存储与提取.其架构模式是插件式的,支持InnoDB.MyISA

两个表联合查询获取聊天表中用户最新的一条聊天数据

一个用户表,一个聊天记录表,两个表联合查询获取聊天表中用户最新的一条聊天数据 select c.contentfrom sixin as c where c.tid = a.user_idorder by ctime desc limit 0,1) as content,(select c.statusfrom sixin as c where c.tid = a.user_idorder by ctime desc limit 0,1) as status from users as a, s

学习数据库必须掌握的54条SQL查询语句

--1.查找员工的编号.姓名.部门和出生日期,如果出生日期为空值,显示日期不详,并按部门排序输出,日期格式为yyyy-mm-dd. select emp_no,emp_name,dept,isnull(convert(char(10),birthday,120),'日期不详') birthday from employee order by dept --2.查找与喻自强在同一个单位的员工姓名.性别.部门和职称 select emp_no,emp_name,dept,title from emp