`
weiruan85
  • 浏览: 384152 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

关于一个sql的写法

SQL 
阅读更多
需求是这样的:
 有个学生表
create table student
   (
    id int primary key,
    name varchar2(200)
   );
 有个成绩表  
   create table score
   ( 
     id int ,  --对应与student 的 id(仅为测试,表结构也没好好设计)
     math int,
     eng int,
     time varchar(200)
   );
insert into student values(1,'lipf');
insert into student values(2,'lixw');
insert into student values(3,'liyf');

insert into score values(1,47,534,'2000');
insert into score values(1,35,43,'2001');
insert into score values(1,56,5,'2002');
insert into score values(1,47,674,'2004');

insert into score values(2,47,43,'2000');
insert into score values(2,35,21,'2001');
insert into score values(2,56,5,'2002');
insert into score values(2,47,32,'2004');
如果某个学生的数学成绩大于英语成绩(不管在那一年),则学生的记录在页面上要变红。

select distinct id, name,min(flag)over(partition by name) xx  from 
(
  select a.id,a.name, b.flag from student a 
  inner join (select distinct  id,  sign(math-eng) flag from score ) b 
   on a.id=b.id
 ) 


这样子就会在记录后边加上一列,表示是否变红。

如果大家有更好的办法,欢迎讨论

分享到:
评论

相关推荐

    DB2常用SQL写法

    DB2还允许一些独特的SQL写法,例如,`AnyOneTable`表示任意一个存在的表,这在某些特定情况下非常有用。但需要注意,这种用法并不推荐在生产环境中频繁使用,因为可能会带来不必要的性能影响。 变量的声明和赋值在...

    绝对惊世骇俗的SQL写法

    1. **子查询和联接操作**:高级的SQL写法可能会利用子查询和多表联接来处理复杂的数据关系,比如在单个查询中同时处理多个表的数据,或者通过嵌套查询来获取特定条件下的子集。 2. **窗口函数**:MySQL 8.0引入了...

    sql写法_CTE

    CTE是一种定义临时结果集的方法,这些结果集可以在同一个查询中多次引用。它并不是真正意义上的物理表,而是在查询过程中创建的一个虚拟表。CTE通过`WITH`关键字定义,并且可以包含任何合法的`SELECT`语句。CTE的...

    SqlServer触发器写法案例

    假设我们有一个名为`OrderBook`的表,其中包含订单信息,以及一个名为`Categories`的表,用于存储不同类别的信息。每当向`OrderBook`表中添加一条新的订单记录时,我们需要更新相应的类别统计数量。 ##### 触发器...

    关于在SQL中抛出异常的写法

    在提供的示例中,`RAISERROR`被用来抛出一个与数据库ID和名称相关的错误: ```sql RAISERROR ('The current database ID is:%d, the database name is: %s.', 16, 1, @DBID, @DBNAME) ``` 这里,`%d`和`%s`是格式...

    10个高级sql写法.pdf

    本文将介绍10个高级SQL写法,这些技巧主要源自MySQL 8.0环境,适用于处理各种业务需求。 1. **ORDER BY FIELD() 自定义排序** 在MySQL中,除了常见的`ASC`和`DESC`用于排序外,`ORDER BY FIELD()`函数允许我们...

    SQL写法—数据修改

    ### SQL写法——数据修改:条件 INSERT ALL 与 INSERT FIRST 在数据库操作中,SQL(Structured Query Language)作为处理关系型数据库的标准语言,其功能强大且应用广泛。本文将详细介绍如何利用Oracle数据库中的...

    sql 触发器的写法

    在本例中,我们需要创建一个触发器来根据“是否会员”这一字段的值自动设置“金额”字段。 首先,我们需要了解触发器的基本结构。触发器由CREATE TRIGGER语句创建,指定触发器的名字、作用的表以及触发的时间点。在...

    SQL语句实现跨Sql server数据库操作实例

    首先,我们来看一下如何在一个SQL Server实例中查询另一个SQL Server实例的数据。这里假设我们需要从IP地址为192.168.1.1的SQL Server实例(数据库名为TT)中查询表test1的所有记录。 **SQL语句示例**: ```sql ...

    C#SqlParameter参数写法

    在提供的代码示例中,创建了一个`SqlParameter`数组来传递到SQL命令中。下面逐一解析这些参数: ```csharp SqlParameter[] parms = new SqlParameter[] { new SqlParameter("@NodeID", UserRight.GetNodeId()), ...

    mysql中获取一天、一周、一月时间数据的各种sql语句写法

    首先,我们创建了一个名为`t`的表,包含`id`和`addTime`两个字段,`addTime`字段存储的是日期时间类型,默认值为'0000-00-00 00:00:00'。然后,我们插入了两条示例数据,分别是'2012-07-12 21:00:00'和'2012-07-22 ...

    SQLServer2008连接字符串写法大全.docx

    - **说明**:用户实例是在连接过程中创建的一个临时SQL Server实例。这允许每个用户都有自己的专用实例,提高了安全性并简化了管理。 #### 三、总结 - 了解和掌握不同的SQL Server 2008连接字符串格式对于开发高效...

    实现 Oracle 连接 SQL Server

    3. **创建数据库链接**:创建一个指向 SQL Server 数据库的数据库链接,以便从 Oracle 数据库访问 SQL Server 数据库的数据: ``` CREATE DATABASE LINK pubs CONNECT TO sa IDENTIFIED BY sa USING 'pubs'; ``` ...

    高性能数据仓库引擎Sybase IQ的SQL写法

    **SQL写法基础** 1. **创建表结构**:在Sybase IQ中,创建表时需要指定列的数据类型、长度和是否允许为空。例如: ```sql CREATE TABLE Sales ( ProductID INT NOT NULL, SaleDate DATE, Quantity SOLDouble, ...

    Excel VBA SQL 语句 范例

    Excel VBA SQL 语句范例 本资源摘要信息主要介绍 Excel VBA 中使用 SQL 语句进行数据...本资源摘要信息提供了两个实例,展示了如何使用 SQL 语句在 Excel VBA 中进行数据处理,并提供了一个经典写法范本供读者参考。

    Oracle Sql高效语句的写法诀窍

    - 绑定变量名称一致:在同一个SQL语句中,即使在运行时赋予不同的值,使用相同名称的绑定变量也能够使得SQL语句共享。 性能测试例子: 文章中提到了一个具体的例子,通过对比两个存储过程的执行时间来展示绑定变量...

    多行SQL导入ACCESS事务的代码写法

    ### 多行SQL导入ACCESS事务的代码写法 #### 知识点概述 本文档将详细介绍如何使用ADO(ActiveX Data Objects)技术结合事务处理功能,实现多行数据的高效导入到Microsoft Access数据库中的方法。在开发过程中,...

    Oracle中PL/SQL中if语句的写法介绍

    –接收键盘输入accept num prompt ‘请输入一个数字:’; declare –将屏幕输入的数字付给变量 pnum number := #begin if pnum = 0 then dbms_output.put_line(‘您输入的是0’); end if; if pnum = 1 then ...

    数据库的设计原理 SQL写法

    5. **表的转换**:将E-R图转换为数据库表,每个实体对应一个表,属性变为表的列,主键用于唯一标识记录,外键用于连接不同表之间的关系。 6. **数据规范化**:规范化的目的是减少数据冗余,提高数据一致性。Dr. E.F...

Global site tag (gtag.js) - Google Analytics