zoukankan      html  css  js  c++  java
  • 我在面试中常问的数据库问题

    面试时常用的sql问题

    第一题

    表A有字段aid等,表B有字段bid等

    A表

    字段名

    aid

    其他字段略

    记录1

    1

    *

    记录2

    2

    *

    记录3

    3

    *

    B表

    字段名

    bid

    其他字段略

    记录1

    2

    *

    记录2

    3

    *

    记录3

    4

    *

    SELECT a.aid,b.bid,……

    FROM A a

    LEFT JOIN B b ON a.aid=b.bid

    查询结果中有那些行,每行的列都是什么样子的

    【主要考察:对左连接的了解,这是基本技能】

    第二题

    有user表记录了系统中的用户信息

    user_id

    user_name

    province

    city

    1

    ebola

    辽宁省

    沈阳市

    2

    camus

    辽宁省

    大连市

    3

    leon

    辽宁省

    大连市

    4

    tyler

    辽宁省

    沈阳市

    5

    oven

    辽宁省

    大连市

    6

    susie

    吉林省

    长春市

    7

    nancy

    吉林省

    吉林市

    8

    lucy

    吉林省

    四平市

    9

    tom

    河北省

    石家庄市

    10

    lily

    河北省

    秦皇岛市

    11

    wendy

    河北省

    保定市

    12

    andy

    河北省

    唐山市

    13

    hard

    河北省

    张家口市

    14

    vance

    河北省

    廊坊市

    请写SQL查询表中的满足以下要求的省份

    1、 不少于5个用户

    2、 省份所属用户属于至少3个城市

    例如:

    辽宁省 不满足第二个条件,只属于沈阳市大连市两个城市

    吉林省 不满足第一个条件,只有3个用户

    河北省 满足第一个条件有6个用户满足第二个条件 有6个城市

     【深度考察sql能力,以面试的紧张情形,目前只有一个人答出来,是一个做过dba的开发】

    第三题

    表有两列id,name,其中id是主键,name是名称,在项目刚开始时name可以重复,当上线运行一段时间后,发现name必须唯一才符合需求,

    希望删除掉name重复的,只保留name相同的行中id最小的行,

    要求

    1、必须使用一个SQL,即 不能多个SQL依次执行来达到目的

    2、当name重复时,只能保留id最小的行,当name不重复时,直接保留。

    3、不要求效率

    即如果有两行(1,张三),(3,张三)则必须删掉id=3的。保留id=1的

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    js与jquery实时监听输入框值的oninput与onpropertychange方法
    jQuery实现的浮动层div浏览器居中显示效果
    jquery代码规范让代码越来越好看
    asp.net截屏功能实现截取web页面
    拦截asp.net输出流并进行处理的方法
    asp.net调用系统设置字体文本框的方法
    asp.net网站防恶意刷新的Cookies与Session解决方法
    Attribute在.net编程中的应用(一)
    java学习——构造类之3!+5!=126
    java学习——构造类
  • 原文地址:https://www.cnblogs.com/klarck/p/13594291.html
Copyright © 2011-2022 走看看