热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

SQL面试题第二季

IT面试题2017-02-2009:41在学习SQL语句,基本语法时,找些面试题学习稳固知识点,接接地气。下面的SQL面试题大概会有100题,分十季

SQL 面试题第二季

在学习SQL语句,基本语法时,找些面试题学习稳固知识点,接接地气。下面的SQL面试题大概会有100题,分十季分享给大家,希望大家能坚持学下来,一定会有收获的!

第二季来了:

  1. ORACLE和DB2支持的大对象是什么?MS SQL支持的大对象是什么?

  2. 在MS SQL中image数据类型的存储容量是多少?

  3. 在MS SQL中varbinary数据类型的存储容量是多少?

  4. 编写查询,按条件合并两列为一列(i.e.我想从FullName或FirstName的列中找出不为空的雇员的名字)。

  5. 如何使用查询创建标识列?

  6. 哪个函数可以用来比较两个不同的日期?

  7. 查找超过40岁的所有员工。

  8. 编写查询,从EMPLOYEE表中找到第二高薪水的员工。

  9. 编写查询,不使用JOIN操作符,从EMPLOYEE表中查找名字开头是“s”和居住在城市“Mumbai”的所有员工。

  10. 如何从EMPLOYEE表中删除重复的员工条目?


答案:

  1. Oracle和DB2是BLOB(Binary Large Objects),CLOB(Character Large Objects)。MS SQL是image和varbinary。

  2. 最大为2G的可变长度的二进制数据。

  3. 最大为8000字节的可变长度的二进制数据。

  4. SELECT Name = CASE

    WHEN EMPLOYEE.FullName IS NOT NULL THEN EMPLOYEE.FullName

    WHEN EMPLOYEE.FirstName IS NOT NULL THEN EMPLOYEE.FirstName

    END

    FROM EMPLOYEE

  5. SELECT row_number() OVER(ORDER by TESTTABLE.p1) as SRNO,

    result = CASE

    WHEN TESTTABLE.p1 IS NOT NULL THEN TESTTABLE.p1

    WHEN TESTTABLE.p2 IS NOT NULL THEN TESTTABLE.p2

    END

    FROM TESTTABLE

  6. SELECT DATEDIFF(dd,'10‐10‐2017','15‐10‐2017');

  7. SELECT COUNT(EMPLOYEES.*) FROM EMPLOYEES WHERE EMPLOYEES.Age>40

  8. SELECT EMPLOYEE.*, MAX(EMPLOYEE.Salary) AS SalarySecondHighest

    FROM EMPLOYEE

    WHERE EMPLOYEE.Salary <

    (SELECT MAX(EMPLOYEE.Salary) AS SalaryFirstHighest FROM EMPLOYEE)

  9. SELECT EMPLOYEE.* FROM EMPLOYEE

    WHERE CHARINDEX('s',EMPLOYEE.name) = 1 AND

    CHARINDEX('Mumbai',EMPLOYEE.City) > 0

  10. 第一步,选择重复的员工记录并将其复制到holdTable表中:

    SELECT EMPLOYEE.EmployeeID, COUNT(EMPLOYEE.EmployeeID), *

    INTO HoldTable

    FROM EMPLOYEE

    GROUP BY EMPLOYEE.EmployeeID

    HAVING COUNT(EMPLOYEE.EmployeeID) > 1

    第二步,选择重复的行到另一个HoldDistinct表中:

    SELECT DISTINCT EMPLOYEE.*

    INTO HoldDistinct

    FROM EMPLOYEE, HoldTable

    WHERE EMPLOYEE.EmployeeID=HoldTable.EmployeeID

    第三步,从EMPLOYEE表中删除重复行:

    DELETE EMPLOYEE

    FROM EMPLOYEE, HoldTable

    WHERE EMPLOYEE.EmployeeID = HoldTable.EmployeeID

    第四步,插于不同条目:

    INSERT INTO EMPLOYEE(EmployeeID, FirstName, LastName, Salary, ...otherlist of columns)

    SELECT EmployeeID, FirstName, LastName, Salary, ...other list of columns)

    FROM HoldDistinct


推荐阅读
  • MySQL 数据库基础学习 一、SQL的作用及分类 二、数据类型 三、存储引擎  (建库建表、数据插入等))
    MySQL 数据库基础学习 一、SQL的作用及分类 二、数据类型 三、存储引擎 (建库建表、数据插入等)) ... [详细]
  • 前景:当UI一个查询条件为多项选择,或录入多个条件的时候,比如查询所有名称里面包含以下动态条件,需要模糊查询里面每一项时比如是这样一个数组条件:newstring[]{兴业银行, ... [详细]
  • 本文详细介绍了Spring的JdbcTemplate的使用方法,包括执行存储过程、存储函数的call()方法,执行任何SQL语句的execute()方法,单个更新和批量更新的update()和batchUpdate()方法,以及单查和列表查询的query()和queryForXXX()方法。提供了经过测试的API供使用。 ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • 本文介绍了利用ARMA模型对平稳非白噪声序列进行建模的步骤及代码实现。首先对观察值序列进行样本自相关系数和样本偏自相关系数的计算,然后根据这些系数的性质选择适当的ARMA模型进行拟合,并估计模型中的位置参数。接着进行模型的有效性检验,如果不通过则重新选择模型再拟合,如果通过则进行模型优化。最后利用拟合模型预测序列的未来走势。文章还介绍了绘制时序图、平稳性检验、白噪声检验、确定ARMA阶数和预测未来走势的代码实现。 ... [详细]
  • Introduction(简介)Forbeingapowerfulobject-orientedprogramminglanguage,Cisuseda ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • 本文介绍了游标的使用方法,并以一个水果供应商数据库为例进行了说明。首先创建了一个名为fruits的表,包含了水果的id、供应商id、名称和价格等字段。然后使用游标查询了水果的名称和价格,并将结果输出。最后对游标进行了关闭操作。通过本文可以了解到游标在数据库操作中的应用。 ... [详细]
  • Oracle seg,V$TEMPSEG_USAGE与Oracle排序的关系及使用方法
    本文介绍了Oracle seg,V$TEMPSEG_USAGE与Oracle排序之间的关系,V$TEMPSEG_USAGE是V_$SORT_USAGE的同义词,通过查询dba_objects和dba_synonyms视图可以了解到它们的详细信息。同时,还探讨了V$TEMPSEG_USAGE的使用方法。 ... [详细]
  • This article discusses the efficiency of using char str[] and char *str and whether there is any reason to prefer one over the other. It explains the difference between the two and provides an example to illustrate their usage. ... [详细]
  • 本文讨论了微软的STL容器类是否线程安全。根据MSDN的回答,STL容器类包括vector、deque、list、queue、stack、priority_queue、valarray、map、hash_map、multimap、hash_multimap、set、hash_set、multiset、hash_multiset、basic_string和bitset。对于单个对象来说,多个线程同时读取是安全的。但如果一个线程正在写入一个对象,那么所有的读写操作都需要进行同步。 ... [详细]
  • 详解 Python 的二元算术运算,为什么说减法只是语法糖?[Python常见问题]
    原题|UnravellingbinaryarithmeticoperationsinPython作者|BrettCannon译者|豌豆花下猫(“Python猫 ... [详细]
author-avatar
swaimprichett_556
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有