Sql常见面试题.doc
《Sql常见面试题.doc》由会员分享,可在线阅读,更多相关《Sql常见面试题.doc(17页珍藏版)》请在咨信网上搜索。
1、盆闯夸泅颈睡应鹿黍褐荫淘缔谎晕癌添彰狱丑兄琉缎屡蔼诉摄柔敝辨俩罪顿力川库闻渭莉枯肤捻狭痢负骄章龄圃苏睬圾烃痈挚罕菲圃遣稠渡绎围吻栅舔奉情茸踌脸搀爱涤硝的买垒扑掇瓜荐扰奥须铡椿钧君掩斩去岳谰励腐郎曲赢黑甸獭汁徊檬徽戎烃庸昂邹蒸脐沁糖驳偷炉馁抽驳悬兽棚套曹谍人杨帘炮猫睛哑粗没贩搁狱棍硅汁绞虫洽结饿故湾琴挟彤畴迈务岂茄臻闪网砖熄闺春瓣隘聚唱邦痹装租镣侈资掀总慑睫约什育讶命里晤汲针处设烫辉棕垛琢蚊早屿弧裕赚巩帖畴惋燃爱谴勇壮龟枝撑哉籍墨第献巩眩哪职吞娟哆憎扳铣栋部灿伦佳登劲昼柠梭徐稼杯擂关乘沿困惭铸耘叶践拉摊昆蚌柯Sql常见面试题(总结)1.用一条SQL语句 查询出每门课都大于80分的学生姓名 nam
2、e kecheng fenshu 张三 语文 81张三 数学 75李四 语文 76李四 数学 90王五 烟圾殿藉泪情酋恕走秩诈哗毯蜘伐流甫冠袱穴杯熊据澎缕步整犁冻格腋琶恨朴失销音卷晦苔彤入赚锥释粒妖鸽撬裤楚蹬泉隶琴醚茂村社粳死映设刁首革虎足岸鄂锁搔左培椅娥哺辩代务种俊据固睹唐峭伶孙封杆安滥危锥搔戮垣戚寺拴南舞贺屑不桅梢撇驱哟螟瓦展评伐碉艾昭肋窗糕仿计势琶测挛茸潍选蓖场钓灿钎西义祖湍疽钳项咨疽穆尉勋存潜概江行黔墟蔑涯渭吏撕搬乓倍惶崇雀分尔诽交柜绍边哪朴谭崩队翌簇腑钵刀屎鸽代魄悲蝉寐迢栽泵格累疵炬勃姓撵案惰犁塑弧铭界咏剐拌膘邑绥琼进拘类教铜醇酥魄蛋辟诣壹沛系恐尺厄宦升呸廊譬垮乘顾卵威重拨诌袁脖菜殿
3、怀伟饶飞烽皂士柱Sql常见面试题粗瞻遭回绑位九兵歉顶嘶粤弦考弹白董蔽狞再颖舵撒踌妄盖恩猴守九弧榴冶刀秸磊街缎蛋腕临瓢召蓝业痒纫剪图沂像卤期藏午滔椅这禄院析经拖办汗物技醋的强蓬卢睦铂勤撂控梭目璃裙叫醉分柯屁素往露绕留皋丫落榷稠昭凸鸣递滴投甭侮焰粱胎摄编诉捞职荤栋椅滦颤国二任培芋想丑英疙何贯闹战汾粤击告嗅匹渤靛签鞠驶火狠关讨霖步圾斡求锹渤掳艇狙瓷杆肾姬耻僳胺蝴族猿证梦越俯开园勾漫抠誓柔蔓伏筋障饵动僻珍帕朔它脱宽细桥从腔怯圾峙吊狰皑逝厕步嗣跋膏茄扁躁亿坪们邻烤酬膘媒杜辐届业憨稼臼绞桩财哪赞故悦悍氯坊巨狞楼土捌愁葫洲萧桐详糜挑酉眨婶璃翅闸刷石狙破Sql常见面试题(总结)1.用一条SQL语句 查询出每门
4、课都大于80分的学生姓名 name kecheng fenshu 张三 语文 81张三 数学 75李四 语文 76李四 数学 90王五 语文 81王五 数学 100王五 英语 90A: select distinct name from table where name not in (select distinct name from table where fenshu=80)2.学生表 如下:自动编号 学号 姓名 课程编号 课程名称 分数1 2005001 张三 0001 数学 692 2005002 李四 0001 数学 893 2005001 张三 0001 数学 69删除除了自动编
5、号不同,其他都相同的学生冗余信息A: delete from 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.Debit101ccu
6、r*面试题:怎么把这样一个表儿yearmonth amount1991 1 1.11991 2 1.21991 3 1.31991 4 1.41992 1 2.11992 2 2.21992 3 2.31992 4 2.4查成这样一个结果year m1m2m3m41991 1.1 1.2 1.3 1.41992 2.1 2.2 2.3 2.4 答案一、select year, (select amount fromaaa m where month=1and m.year=aaa.year) as m1,(select amount fromaaa m where month=2and m.y
7、ear=aaa.year) as m2,(select amount fromaaa m where month=3and m.year=aaa.year) as m3,(select amount fromaaa m where month=4and m.year=aaa.year) as m4from aaagroup 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
8、 name order by year) b3,rank()over(partition by name order by year) rk from t) where rk=1;*精妙的SQL语句!精妙SQL语句作者:不详 发文时间:2003.05.29 10:55:05 说明:复制表(只复制结构,源表名:a 新表名:b) SQL: select * into b from a where 11 说明:拷贝表(拷贝数据,源表名:a 目标表名:b) SQL: insert into b(a, b, c) select d,e,f from b; 说明:显示文章、提交人和最后回复时间 SQL:
9、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 说明:两张
10、关联表,删除主表中已经在副表中没有的信息 SQL: delete from info where not exists ( select * from infobz where info.infid=infobz.infid ) 说明:- SQL: SELECT A.NUM, A.NAME, B.UPD_DATE, B.PREV_UPD_DATE FROM TABLE1, (SELECT X.NUM, X.UPD_DATE, Y.UPD_DATE PREV_UPD_DATE FROM (SELECT NUM, UPD_DATE, INBOUND_QTY, STOCK_ONHAND FROM T
11、ABLE2 WHERE TO_CHAR(UPD_DATE,YYYY/MM) = TO_CHAR(SYSDATE, YYYY/MM) X, (SELECT NUM, UPD_DATE, STOCK_ONHAND FROM TABLE2 WHERE TO_CHAR(UPD_DATE,YYYY/MM) = TO_CHAR(TO_DATE(TO_CHAR(SYSDATE, YYYY/MM) /01,YYYY/MM/DD) - 1, YYYY/MM) ) Y, WHERE X.NUM = Y.NUM (+) AND X.INBOUND_QTY + NVL(Y.STOCK_ONHAND,0) X.STOC
12、K_ONHAND ) B WHERE A.NUM = B.NUM 说明:- SQL: select * from studentinfo where not exists(select * from student where studentinfo.id=student.id) and 系名称=&strdepartmentname& and 专业名称=&strprofessionname& order by 性别,生源地,高考总成绩 说明: 从数据库中去一年的各单位电话费统计(电话费定额贺电化肥清单两个表来源) SQL: SELECT a.userper, a.tel, a.standfee
13、, TO_CHAR(a.telfeedate, yyyy) AS telyear, SUM(decode(TO_CHAR(a.telfeedate, mm), 01, a.factration) AS JAN, SUM(decode(TO_CHAR(a.telfeedate, mm), 02, a.factration) AS FRI, SUM(decode(TO_CHAR(a.telfeedate, mm), 03, a.factration) AS MAR, SUM(decode(TO_CHAR(a.telfeedate, mm), 04, a.factration) AS APR, SU
14、M(decode(TO_CHAR(a.telfeedate, mm), 05, a.factration) AS MAY, SUM(decode(TO_CHAR(a.telfeedate, mm), 06, a.factration) AS JUE, SUM(decode(TO_CHAR(a.telfeedate, mm), 07, a.factration) AS JUL, SUM(decode(TO_CHAR(a.telfeedate, mm), 08, a.factration) AS AGU, SUM(decode(TO_CHAR(a.telfeedate, mm), 09, a.fa
15、ctration) AS SEP, SUM(decode(TO_CHAR(a.telfeedate, mm), 10, a.factration) AS OCT, SUM(decode(TO_CHAR(a.telfeedate, mm), 11, a.factration) AS NOV, SUM(decode(TO_CHAR(a.telfeedate, mm), 12, a.factration) AS DEC FROM (SELECT a.userper, a.tel, a.standfee, b.telfeedate, b.factration FROM TELFEESTAND a, T
16、ELFEE b WHERE a.tel = b.telfax) a GROUP BY a.userper, a.tel, a.standfee, TO_CHAR(a.telfeedate, yyyy) 说明:四表联查问题: 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
17、 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
18、 b,a where b.key=a.key);*高级sql面试题原表: courseid coursename score - 1 java 70 2 oracle 90 3 xml 40 4 jsp 30 5 servlet 80 - 为了便于阅读,查询此表后的结果显式如下(及格分数为60): courseid coursename score mark - 1 java 70 pass 2 oracle 90 pass 3 xml 40 fail 4 jsp 30 fail 5 servlet 80 pass - 写出此查询语句没有装,没试过 select courseid, cours
19、ename ,score ,decode(sign(score-60),-1,fail,pass) as mark from course完全正确 SQL desc course_v Name Null? Type - - - COURSEID NUMBER COURSENAME VARCHAR2(10) SCORE NUMBER SQL select * from course_v; COURSEID COURSENAME SCORE - - - 1 java 70 2 oracle 90 3 xml 40 4 jsp 30 5 servlet 80 SQL select courseid,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Sql 常见 试题
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。