`

一条SQL解决操作统计查询

SQL 
阅读更多

网站的操作统计可以用来查看用户的使用习惯、爱好等...

下面的表table是记录用户使用那些模块的内容

字段有业务代码(YWDM),用户的编号(RID),访问时间(TIME)

我们在对网站的用户进行操作统计的时候,要得到那些用户在特定的时间使用了那些功能,可以通过这样一条语句得到具体列表

 

 

SELECT * FROM   
     (SELECT A.*, ROWNUM RN FROM   /*  增加rownum 用于分页  */
	           (select z.rid, (select count(*) from      /*  内部查询开始  */
                             wpw_query_zgcx 
                                   where rid = z.rid and ywdm='0619') as wcl, /* 将内部表与外部表连接z.rid=rid*/
                   (select count(*) from wpw_query_zgcx 
                                   where rid = z.rid and ywdm='0618') as zcl,
                   (select count(*) from wpw_query_zgcx 
                                   where rid = z.rid and ywdm='0805') as yjc,
                   (select count(*) from wpw_query_zgcx 
                                  where rid = z.rid and ywdm='0302') as fxczf,
                   (select count(*) from wpw_query_zgcx 
                                  where rid = z.rid and ywdm='2103') as qwsg,
                   (select count(*) from wpw_query_zgcx 
                                  where rid = z.rid and ywdm='1601') as qzcs,
                   (select count(*) from wpw_query_zgcx 
                                  where rid = z.rid and ywdm='2201') as sjsb,
                   (select count(*) from wpw_query_zgcx 
                                  where rid = z.rid and ywdm='0501') as ptxx,
                   (select count(*) from wpw_query_zgcx 
                                  where rid = z.rid and ywdm='1701') as ptdd 
          from wpw_query_zgcx z       /*    */
                       where time > to_date('2010-06-01 00:00', 'yyyy-mm-dd hh24:mi:ss') 
                         and time < to_date('2011-06-02 18:21', 'yyyy-mm-dd hh24:mi:ss') 
          group by z.rid order by z.rid desc) A )   /* 根据用户编号分组、排序  */
where RN between '1' and '10   /* 根据开始页和结束页分组  */

 如果要将内部开始查询地方的rid转换成用户名称可以替换成一条语句:

select user_name from users where user_id=z.rid

 

 

 

 

 

  • 大小: 14.3 KB
0
0
分享到:
评论

相关推荐

    SQLServer-sql查询入门

    - **数据存储形式**:SQL中所有的数据都以表格形式存储,每个表由多个字段(列)组成,每行则代表一条记录。 - **示例**:如“姓名”和“电子邮件地址”组成的简单表。 - **字段**:表中的列,比如“姓名”和...

    sql中的按日期统计问题

    在SQL(结构化查询语言)中,处理按日期统计的问题是一项常见的任务,特别是在数据分析、报表生成和业务智能领域。这类问题通常涉及到从数据库中提取特定日期范围内的数据,或者计算不同日期区间的数据量。以下是对...

    SQL一条语句统计记录总数及各状态数

    这两种方法都可以有效地解决题目中提出的问题,即在一条SQL语句中统计记录总数以及按状态区分的计数。第一种方法使用了`UNION ALL`,适用于简单的情况,但当有更多状态需要统计时,可能需要更多的子查询。第二种方法...

    SQL高级查询语句关键时候解决问题的SQL语句

    - 第一条语句用于查找所有不属于当前用户拥有的表。 - 第二条语句列出当前用户所有的表。 - 第三条语句筛选出特定表空间`MR3`下的所有表。 - 第四条语句也筛选出`MR3`表空间下的表,并按所有者排序。 这些查询对于...

    2个SQL优化语句,查询出来哪条SQL语句占据资源最多.rar

    例如,在Oracle数据库中,我们可以使用`V$SQL`视图来获取SQL语句的相关统计信息。查询可能包含以下关键部分: ```sql SELECT sql_text, total_executions, cpu_time, (cpu_time/total_executions) as avg_cpu_time ...

    SQL基础面试题,一条语句解决问题

    在SQL面试中,掌握基础语法和能够高效地解决实际问题是非常关键的。下面我们将通过解析提供的面试题,来深入理解并学习SQL的一些核心概念。 ### 面试题1:差异化数据展示 题目要求根据`WorkResult`表中的成绩,...

    在T-SQL中实现字符串类型的聚合统计查询的一种方法.pdf

    在这种情况下,尽管查询可能返回多条记录,但变量@name只会存储最后一条记录的name字段值,这是因为每次查询结果被赋值给变量时,前一次的值会被覆盖。 为了实现字符串的连接,作者使用了一个巧妙的技巧,即通过...

    SQLserver窗体学生成绩查询

    1. **SQL基础**:学习基本的SELECT语句,如如何根据条件筛选数据,如何使用JOIN操作连接多个表,以及如何使用聚合函数(如SUM, AVG)进行统计计算。 2. **窗体设计**:理解Visual Basic中的窗体组件,如文本框、...

    T-SQL高级查询

    compute进行汇总前面是查询的结果,后面一条结果集就是汇总的信息。compute子句中可以添加多个汇总表达式,可以添加的信息如下: a、 可选by关键字。它是每一列计算指定的行聚合 b、 行聚合函数名称。包括sum、...

    自增字段的SQL语句解决方案

    在数据库设计与管理中,自增字段是一个非常实用的功能,它能够自动为每一条新记录分配一个唯一的、连续的整数值。这对于需要唯一标识符(例如主键)的场景特别有用。本文将详细介绍自增字段在SQL中的实现方法及相关...

    复杂sql查询语句

    通过对这些复杂SQL查询的学习,我们可以了解到如何构建更高级的SQL查询来解决实际问题。这些查询不仅涉及到基础的SQL语法,还包含了对数据结构的深入理解以及对SQL优化技巧的掌握。在实际工作中,熟练运用这些技术...

    非常好用的SQL语句优化34条+sql语句基础

    以下是对"非常好用的SQL语句优化34条+sql语句基础"这一主题的详细解析: 1. **索引优化**:索引是提高查询速度的关键。创建合适的索引(主键、唯一索引、全文索引等)能显著提升数据检索效率。但同时要注意,过多的...

    Microsoft SQL SERVER 2008技术内幕 T-SQL查询

    《Microsoft SQL SERVER 2008技术内幕 T-SQL查询》是一本专注于SQL Server 2008数据库管理系统中T-SQL(Transact-SQL)查询的深入解析书籍。T-SQL是SQL Server的主要编程语言,用于数据操作、查询、存储过程编写以及...

    DB2性能监控SQL

    #### 四、SQL排序操作统计 除了上述几个方面,排序操作也是影响SQL性能的重要因素之一。下面的SQL语句可以帮助我们了解排序操作的情况: ```sql SELECT num_executions "NumExecs", average_execution_time_s AS ...

    MySQL查询把多列返回结果集拼装成一个字段

    mysql中有种可以通过join相关操作进行表与表之间的方式查询不同结果集,但是在一对多的情况下,关键查询的结果是多条的.例如:班级和学习的关系,我想很直观的看到班级和学生的情况,列表显示出班级的信息和班级的男生...

    经典sql面试题

    根据题目描述,我们需要实现的功能是:对于除“学号”字段外的所有字段都相同的记录,仅保留一条,其余的都需要被删除。 **数据库设计** 首先,题目给出了一个名为`tbl_students`的表,该表包含以下字段: - `id`...

    一道经典的SQL测试题

    这道题目不仅能够测试出应试者在SQL操作方面的熟练程度,还能考察其逻辑思维能力与问题解决技巧。 ### 题目背景 本题是一道典型的SQL查询题,主要考察考生对于基本SQL语法的掌握情况以及对复杂查询的理解能力。...

Global site tag (gtag.js) - Google Analytics