`

数据库初级语句

阅读更多
1.用一条SQL语句 查询出每门课都大于80分的学生姓名 
name   kecheng   fenshu
张三     语文       81
张三     数学       75
李四     语文       76
李四     数学       90
王五     语文       81
王五     数学       100
王五     英语       90

A: select distinct name from table  where  name not in (select distinct name from table where fenshu<=80)

2.学生表 如下:
自动编号   学号   姓名 课程编号 课程名称 分数
1        2005001  张三  0001      数学    69
2        2005002  李四  0001      数学    89
3        2005001  张三  0001      数学    69
删除除了自动编号不同,其他都相同的学生冗余信息

A: delete tablename where 自动编号 not in(select min(自动编号) from tablename group by 学号,姓名,课程编号,课程名称,分数)

一个叫department的表,里面只有一个字段name,一共有4条纪录,分别是a,b,c,d,对应四个球对,现在四个球对进行比赛,用一条sql语句显示所有可能的比赛组合.
你先按你自己的想法做一下,看结果有我的这个简单吗?
答:select a.name, b.name
from team a, team b
where a.name < b.name

请用SQL语句实现:从TestDB数据表中查询出所有月份的发生额都比101科目相应月份的发生额高的科目。请注意:TestDB中有很多科目,都有1-12月份的发生额。
AccID:科目代码,Occmonth:发生额月份,DebitOccur:发生额。
数据库名:JcyAudit,数据集:Select * from TestDB
答:select a.*
from TestDB a
,(select Occmonth,max(DebitOccur) as Debit101ccur from TestDB where AccID='101' group by Occmonth) b
where a.Occmonth=b.Occmonth and a.DebitOccur>b.Debit101ccur
************************************************************************************
面试题:怎么把这样一个表儿
year  month amount
1991   1     1.1
1991   2     1.2
1991   3     1.3
1991   4     1.4
1992   1     2.1
1992   2     2.2
1992   3     2.3
1992   4     2.4
查成这样一个结果
year m1  m2  m3  m4
1991 1.1 1.2 1.3 1.4
1992 2.1 2.2 2.3 2.4

答案一、
select year,
(select amount from  aaa m where month=1  and m.year=aaa.year) as m1,
(select amount from  aaa m where month=2  and m.year=aaa.year) as m2,
(select amount from  aaa m where month=3  and m.year=aaa.year) as m3,
(select amount from  aaa m where month=4  and m.year=aaa.year) as m4
from aaa  group by year

这个是ORACLE  中做的:
select * from (select name, year b1, lead(year) over
(partition by name order by year) b2, lead(m,2) over(partition by name order by year) b3,rank()over(
partition by name order by year) rk from t) where rk=1;
***********************************************************


说明:复制表(只复制结构,源表名:a 新表名:b)
SQL: select * into b from a where 1<>1

说明:拷贝表(拷贝数据,源表名:a 目标表名:b)
SQL: insert into b(a, b, c) select d,e,f from b;

说明:显示文章、提交人和最后回复时间
SQL: select a.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b

说明:外连接查询(表名1:a 表名2:b)
SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c

说明:日程安排提前五分钟提醒
SQL: select * from 日程安排 where datediff('minute',f开始时间,getdate())>5

说明:两张关联表,删除主表中已经在副表中没有的信息
SQL:
delete from info where not exists ( select * from infobz where info.infid=infobz.infid )

说明:--
SQL:
select * from studentinfo where not exists(select * from student where studentinfo.id=student.id) and 系名称='"&strdepartmentname&"' and 专业名称='"&strprofessionname&"' order by 性别,生源地,高考总成绩

说明:四表联查问题:
SQL: select * from a left inner join b on a.a=b.b right inner join c on a.a=c.c inner join d on a.a=d.d where .....

说明:得到表中最小的未使用的ID号
SQL:
SELECT (CASE WHEN EXISTS(SELECT * FROM Handle b WHERE b.HandleID = 1) THEN MIN(HandleID) + 1 ELSE 1 END) as HandleID
FROM Handle
WHERE NOT HandleID IN (SELECT a.HandleID - 1 FROM Handle a)

*******************************************************************************
有两个表A和B,均有key和value两个字段,如果B的key在A中也有,就把B的value换为A中对应的value
这道题的SQL语句怎么写?
update   b   set   b.value=(select   a.value   from   a   where   a.key=b.key)   where   b.id   in(select   b.id   from   b,a   where   b.key=a.key);
***************************************************************************
分享到:
评论

相关推荐

    数据库初级课件-sql语句初级学习

    "数据库初级课件-SQL语句初级学习"的主题涵盖了基础的SQL语法和在SQL Server中设置用户访问权限的实践。在这个教程中,我们将深入探讨SQL的基本概念以及如何在SQL Server环境下为用户提供安全、有效的访问控制。 ...

    数据库从初级到高级PPT教程

    本教程《数据库从初级到高级PPT教程》旨在帮助学习者逐步掌握数据库的基础知识,进阶至高级应用,实现从入门到精通的跨越。 首先,我们需要理解数据库的基本概念。数据库(Database)是一个有组织的数据集合,它...

    oracle数据库初级管理员

    本篇文章将详细解析Oracle数据库初级管理员需要知道的关键概念和技术。 首先,我们需要理解Oracle数据库的基本架构。Oracle 8i是Oracle公司推出的一个重要版本,它引入了许多新的特性,如对象关系模型、存储过程...

    db2数据库初级PPT课件

    【DB2数据库初级PPT课件】是一份深入学习IBM DB2关系型数据库管理系统的教程资料,适合初学者入门。DB2,全称Database 2,由全球知名的科技公司IBM开发,提供了一套全面的数据管理和分析解决方案。它支持多种操作...

    数据库初级指导过程书

    【数据库初级指导过程】 在学习数据库的过程中,首先要理解数据库的核心概念和基本操作。数据库是用于存储、管理和检索数据的系统,它提供了数据的组织、存储和检索机制。本指导书主要针对初学者,旨在帮助他们掌握...

    Derby数据库初级使用文档

    本文档将详细介绍Derby数据库的初级使用,包括安装、启动、创建数据库、设置用户以及连接数据库的步骤。 1. **Derby数据库版本**: 版本为db-derby-10.8.2.2,可以在官方下载地址...

    MySQL数据库初级开发教程

    这个“MySQL数据库初级开发教程”将帮助你系统地学习MySQL,通过实例和案例练习,逐步掌握数据库开发的基础技能。无论你是开发者、运维人员还是数据分析爱好者,这都将是你开启数据库世界大门的一把钥匙。

    数据库初级考试的题目

    初级数据库考试主要考察考生对基本概念、原理和操作的掌握。以下是一些可能涵盖在初级数据库考试中的关键知识点: 1. **数据库基本概念**:了解数据库是什么,它的功能以及在信息系统中的作用。数据库是一种有组织...

    C#不写SQL语句的数据库操作

    传统的数据库操作往往涉及到编写大量的SQL语句,这种方式虽然直接且高效,但对于一些初级开发者或专注于业务逻辑的开发者来说,可能会觉得繁琐。本主题将探讨如何在C#中进行不写SQL语句的数据库操作,实现对数据的增...

    数据库SQL语句集锦

    sql常用命令,适合初级开发人员使用,比如我..

    数据库实验 南邮 SQL

    数据库实验 南邮 SQL 数据库实验报告旨在帮助学生熟悉数据库系统,掌握 SQL 语言并能熟练运用 SQL 语言进行数据定义和数据操纵。实验中,学生将学习如何创建数据库,使用 SQL 语言进行数据定义和数据操纵,并加深对...

    DELPHI数据库初级应用 学生成绩管理软件

    DELPHI数据库初级应用 学生成绩管理软件是一款基于DELPHI编程环境开发的简易学生管理系统,主要用于管理和存储学生的成绩信息。这个系统的核心是利用数据库技术来高效地组织和检索数据,而DELPHI作为强大的可视化...

    VC用ADO连接ACCESS数据库初级入门实例(会连者不必看)

    **VC使用ADO连接ACCESS数据库初级入门实例** 在VC++编程中,访问数据库是常见的需求,尤其是在开发桌面应用程序时。ADO(ActiveX Data Objects)是Microsoft提供的一种数据访问接口,它使得程序员可以方便地与各种...

    SQL初级教程配有数据库

    这个初级教程将引导初学者深入了解SQL的基础知识,包括如何创建、查询、更新和管理数据库。教程配备了一个实际的数据库,通过实践操作来增强学习体验。 首先,数据库由两个主要文件组成:主数据文件(.mdf)和事务...

    关于Oracle数据库的一些基础知识

    三、Oracle初级学习 对于初学者,了解以下几个关键概念至关重要: 1. 数据库实例与数据库:实例是运行在操作系统上的内存结构,而数据库是物理磁盘上的数据文件集合。 2. SQL语言基础:学会SELECT、INSERT、UPDATE...

    VC++数据库编程初级实例教学

    本教程“VC++数据库编程初级实例教学”旨在帮助初学者掌握如何在VC++环境中进行数据库编程,通过实例来深入理解这一技术。 首先,我们要了解VC++与数据库交互的基础。在VC++中,最常用的数据库接口是ODBC(Open ...

    SQL数据库入门(初级)

    SQL数据库入门(初级)课程是针对初学者设计的,旨在帮助你快速掌握SQL的基本概念和操作,以便在数据管理领域奠定坚实的基础。SQL,全称Structured Query Language,即结构化查询语言,是用于管理和处理关系型数据库...

    适合初级学着的数据库实验手册

    数据库是信息管理的核心工具,尤其对于初级学习者来说,掌握其基本原理和操作至关重要。这份“适合初级学着的数据库实验手册”旨在帮助初学者逐步理解数据库的设计与使用,通过实际操作来深化理论知识。 首先,PDM...

    vb.net开发初级数据库开发视频教程

    总的来说,"vb.net开发初级数据库开发视频教程"将帮助你从零开始掌握数据库开发的基本技能,包括创建数据库、设计表结构、编写SQL语句、操作数据以及实现用户界面与数据库的交互。通过实践和理解这些知识点,你将...

    Oracle初级语句,大家可以给我点关注之后,自行领取。

    Oracle初级语句,大家可以给我点关注之后,自行领取。

Global site tag (gtag.js) - Google Analytics