1.用一条SQL语句查询出每门课都大于80分的学生姓名
namekechengfenshu
张三语文81
张三数学75
李四语文76
李四数学90
王五语文81
王五数学100
王五英语<?XML:NAMESPACE PREFIX = ST1 /><chmetcnv tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="90" unitname="a">90<br></chmetcnv>
A:selectdistinctnamefromtablewherenamenotin(selectdistinctnamefromtablewherefenshu<=80)
2.学生表如下:
自动编号学号姓名课程编号课程名称分数
12005001张三0001数学69
22005002李四0001数学89
32005001张三0001数学69
删除除了自动编号不同,其他都相同的学生冗余信息
A:deletetablenamewhere自动编号notin(selectmin(自动编号)fromtablenamegroupby学号,姓名,课程编号,课程名称,分数)
一个叫department的表,里面只有一个字段name,一共有4条纪录,分别是a,b,c,d,对应四个球对,现在四个球对进行比赛,用一条sql语句显示所有可能的比赛组合.
你先按你自己的想法做一下,看结果有我的这个简单吗?
答:selecta.name,b.name
fromteama,teamb
wherea.name<b.name
请用SQL语句实现:从TestDB数据表中查询出所有月份的发生额都比101科目相应月份的发生额高的科目。请注意:TestDB中有很多科目,都有1-12月份的发生额。
AccID:科目代码,Occmonth:发生额月份,DebitOccur:发生额。
数据库名:JcyAudit,数据集:Select*fromTestDB
答:selecta.*
fromTestDBa
,(selectOccmonth,max(DebitOccur)Debit101ccurfromTestDBwhereAccID='101'groupbyOccmonth)b
wherea.Occmonth=b.Occmonthanda.DebitOccur>b.Debit101ccur
************************************************************************************
面试题:怎么把这样一个表儿
yearmonthamount
199111.1
199121.2
199131.3
199141.4
199212.1
199222.2
199232.3
199242.4
查成这样一个结果
yearm1m2m3m4
19911.11.21.31.4
19922.12.22.32.4
答案一、
selectyear,
(selectamountfromaaamwheremonth=1andm.year=aaa.year)asm1,
(selectamountfromaaamwheremonth=2andm.year=aaa.year)asm2,
(selectamountfromaaamwheremonth=3andm.year=aaa.year)asm3,
(selectamountfromaaamwheremonth=4andm.year=aaa.year)asm4
fromaaagroupbyyear
这个是ORACLE中做的:
select*from(selectname,yearb1,lead(year)over
(partitionbynameorderbyyear)b2,lead(m,2)over(partitionbynameorderbyyear)b3,rank()over(
partitionbynameorderbyyear)rkfromt)whererk=1;
************************************************************************************
精妙的SQL语句!
精妙SQL语句
作者:不详发文时间:2003.05.2910:55:05
说明:复制表(只复制结构,源表名:a新表名:b)
SQL:select*intobfromawhere1<>1
说明:拷贝表(拷贝数据,源表名:a目标表名:b)
SQL:insertintob(a,b,c)selectd,e,ffromb;
说明:显示文章、提交人和最后回复时间
SQL:selecta.title,a.username,b.adddatefromtablea,(selectmax(adddate)adddatefromtablewheretable.title=a.title)b
说明:外连接查询(表名1:a表名2:b)
SQL:selecta.a,a.b,a.c,b.c,b.d,b.ffromaLEFTOUTJOINbONa.a=b.c
说明:日程安排提前五分钟提醒
SQL:select*from日程安排wheredatediff('minute',f开始时间,getdate())>5
说明:两张关联表,删除主表中已经在副表中没有的信息
SQL:
deletefrominfowherenotexists(select*frominfobzwhereinfo.infid=infobz.infid)
说明:--
SQL:
SELECTA.NUM,A.NAME,B.UPD_DATE,B.PREV_UPD_DATE
FROMTABLE1,
(SELECTX.NUM,X.UPD_DATE,Y.UPD_DATEPREV_UPD_DATE
FROM(SELECTNUM,UPD_DATE,INBOUND_QTY,STOCK_ONHAND
FROMTABLE2
WHERETO_CHAR(UPD_DATE,'YYYY/MM')=TO_CHAR(SYSDATE,'YYYY/MM'))X,
(SELECTNUM,UPD_DATE,STOCK_ONHAND
FROMTABLE2
WHERETO_CHAR(UPD_DATE,'YYYY/MM')=
TO_CHAR(TO_DATE(TO_CHAR(SYSDATE,'YYYY/MM')¦¦'/01','YYYY/MM/DD')-1,'YYYY/MM'))Y,
WHEREX.NUM=Y.NUM(+)
ANDX.INBOUND_QTY+NVL(Y.STOCK_ONHAND,0)<>X.STOCK_ONHAND)B
WHEREA.NUM=B.NUM
说明:--
SQL:
select*fromstudentinfowherenotexists(select*fromstudentwherestudentinfo.id=student.id)and系名称='"&strdepartmentname&"'and专业名称='"&strprofessionname&"'orderby性别,生源地,高考总成绩
说明:
从数据库中去一年的各单位电话费统计(电话费定额贺电化肥清单两个表来源)
SQL:
SELECTa.userper,a.tel,a.standfee,TO_CHAR(a.telfeedate,'yyyy')AStelyear,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'01',a.factration))ASJAN,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'02',a.factration))ASFRI,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'03',a.factration))ASMAR,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'04',a.factration))ASAPR,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'05',a.factration))ASMAY,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'06',a.factration))ASJUE,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'07',a.factration))ASJUL,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'08',a.factration))ASAGU,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'09',a.factration))ASSEP,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'10',a.factration))ASOCT,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'11',a.factration))ASNOV,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'12',a.factration))ASDEC
FROM(SELECTa.userper,a.tel,a.standfee,b.telfeedate,b.factration
FROMTELFEESTANDa,TELFEEb
WHEREa.tel=b.telfax)a
GROUPBYa.userper,a.tel,a.standfee,TO_CHAR(a.telfeedate,'yyyy')
说明:四表联查问题:
SQL:select*fromaleftinnerjoinbona.a=b.brightinnerjoincona.a=c.cinnerjoindona.a=d.dwhere.....
说明:得到表中最小的未使用的ID号
SQL:
SELECT(CASEWHENEXISTS(SELECT*FROMHandlebWHEREb.HandleID=1)THENMIN(HandleID)+1ELSE1END)asHandleID
FROMHandle
WHERENOTHandleIDIN(SELECTa.HandleID-1FROMHandlea)
*******************************************************************************
有两个表A和B,均有key和value两个字段,如果B的key在A中也有,就把B的value换为A中对应的value
这道题的SQL语句怎么写?
相关推荐
### SQL常见面试题解析 #### 1. 实现从`TestDB`数据表中查询出所有月份的发生额都比101科目相应月份的发生额高的科目 这个问题的核心在于如何比较两个科目的发生额,并且确保所有月份都满足条件。假设`TestDB`表...
### SQL常见面试题知识点解析 #### 一、触发器的作用 **定义与功能:** 触发器是一种特殊类型的存储过程,其主要作用是在特定的数据库事件(如插入、更新或删除数据)发生时自动执行。触发器能够帮助维护数据的...
### SQL常见面试题总结 #### 一、ROWNUM 使用技巧 **题目背景:** ROWNUM 是一个伪列,用于返回表中行的编号。它常用于限制查询结果的行数,例如在分页查询中。 **示例代码:** ```sql -- 示例1:查询最高薪水的...
SQL常见面试题解析 本文档总结了2022年SQL常见面试题,涵盖了SQL语句的基本知识点、数据库设计和高级操作等方面的题目。下面是对每个题目的详细解释和知识点总结: 一.SQL语句基础知识点 1. 用一条SQL语句查询出...
"2022年SQL常见面试题集" 本资源摘要信息涵盖了SQL常见面试题集,涉及学生表、课程表、成绩表、教师表等多个表的操作。这份面试题集涵盖了多种SQL语句,包括查询、插入、更新、删除等操作,对SQL语言的熟练度和问题...
SQL常见面试题 SQL 是 Structured Query Language 的缩写,作为一种标准的数据库语言,广泛应用于关系数据库管理系统中。在面试中, SQL 问题是必考题之一,本文总结了常见的 SQL 面试题,旨在帮助即将找工作的同学...
### SQL常见面试题解析 #### 一、删除表中重复记录 1. **删除除了每组中 rowid 最大的记录外的所有记录** - **问题背景**:在实际业务场景中,可能会出现数据冗余的情况,即同一组数据中有多个重复项,为了确保...
### 经典SQL面试题解析 #### 颇具挑战性的SQL面试题——删除冗余记录 **题目背景与分析** 在本题中,我们面对的是一个常见的问题:如何有效地处理数据库中的冗余数据。在实际应用中,由于各种原因(如数据导入...
这个压缩包中的"SQL面试题"集合,无疑是一个全面且经典的SQL知识复习资源,适用于准备面试的求职者或希望提升SQL技能的从业者。 首先,我们要理解SQL的基本概念。SQL主要包括数据查询、数据更新、数据插入和数据...
以下是对这些常见面试题目的详细解析: 1. 查询每门课都大于80分的学生姓名: 这个问题可以通过使用子查询来解决。首先,找出所有分数低于或等于80的学生,然后从原始表中排除这些学生。SQL语句如下: ```sql ...
根据提供的文件内容,我们可以整理出以下几个SQL面试题及其解答,这些问题主要聚焦于SQL查询技巧、数据处理以及数据结构的理解。 ### 1. 查询每门课都大于80分的学生姓名 **题目描述**:给定一张成绩表,其中包含...
以下是对给定面试题的详细解析,涵盖了多个SQL知识点: 1. 查询“001”课程比“002”课程成绩高的所有学生的学号: 这个题目考察了子查询和连接操作。首先,对“001”和“002”课程的成绩进行子查询,然后通过内...
SQL 面试题知识点提炼 触发器的作用是强化约束,维护数据的完整性和一致性,可以跟踪数据库内的操作,从而不允许未经许可的更新和变化。触发器是一个特殊的存储过程,能够联级运算。 存储过程是一个预编译的 SQL ...
在面试中,SQL题目通常用来评估求职者的数据查询、数据操作和数据分析能力。以下是对给定文档中SQL试题的详细解释: 1. 查询“001”课程比“002”课程成绩高的所有学生学号: 这个问题需要联接`SC`表两次,一次...
本资源涵盖了常见的 SQL 面试题,涵盖了学生、课程、成绩、教师等多个方面,涉及到多表查询、子查询、分组、排序等多种 SQL 技术。本文将对每个问题进行详细解析,并提供相应的 SQL 语句。 问题 1:查询“001”课程...