描述

题目:现在运营想查看所有大学中带有北京的用户的信息,请你取出相应数据。

示例:用户信息表:user_profile

id device_id gender age university gpa
1 2138 male 21 北京大学 3.4
2 3214 male 复旦大学 4.0
3 6543 female 20 北京大学 3.2
4 2315 female 23 浙江大学 3.6
5 5432 male 25 山东大学 3.8
6 2131 male 28 北京师范大学 3.3

根据示例,你的查询应返回如下结果:

device_id age university
2138 21 北京大学
6543 20 北京大学
2131 28 北京师范大学

示例1

输入:

drop table if exists user_profile;
CREATE TABLE `user_profile` (
`id` int NOT NULL,
`device_id` int NOT NULL,
`gender` varchar(14) NOT NULL,
`age` int ,
`university` varchar(32) NOT NULL,
`gpa` float);
INSERT INTO user_profile VALUES(1,2138,'male',21,'北京大学',3.4);
INSERT INTO user_profile VALUES(2,3214,'male',null,'复旦大学',4.0);
INSERT INTO user_profile VALUES(3,6543,'female',20,'北京大学',3.2);
INSERT INTO user_profile VALUES(4,2315,'female',23,'浙江大学',3.6);
INSERT INTO user_profile VALUES(5,5432,'male',25,'山东大学',3.8);
INSERT INTO user_profile VALUES(6,2131,'male',28,'北京师范大学',3.3);

复制输出:

2138|21|北京大学
6543|20|北京大学
2131|28|北京师范大学

知识

字符匹配

一般形式为:

列名 [NOT ] LIKE

匹配串中可包含如下四种通配符:
_:匹配任意一个字符;
%:匹配0个或多个字符;
[ ]:匹配[ ]中的任意一个字符(若要比较的字符是连续的,则可以用连字符“-”表 达 );
[^ ]:不匹配[ ]中的任意一个字符。

例23.查询学生表中姓‘张’的学生的详细信息。

1

SELECT FROM 学生表 WHERE 姓名 LIKE ‘张%’

例24.查询姓“张”且名字是3个字的学生姓名。

1

SELECT FROM 学生表 WHERE 姓名 LIKE '张__’

如果把姓名列的类型改为nchar(20),在SQL Server 2012中执行没有结果。原因是姓名列的类型是char(20),当姓名少于20个汉字时,系统在存储这些数据时自动在后边补空格,空格作为一个字符,也参加LIKE的比较。可以用rtrim()去掉右空格。

1

SELECT FROM 学生表 WHERE rtrim(姓名) LIKE '张__'

例25.查询学生表中姓‘张’、姓‘李’和姓‘刘’的学生的情况。

1

SELECT FROM 学生表 WHERE 姓名 LIKE '[张李刘]%’

例26.查询学生表表中名字的第2个字为“小”或“大”的学生的姓名和学号。

1

SELECT 姓名,学号 FROM 学生表 WHERE 姓名 LIKE '_[小大]%'

例27.查询学生表中所有不姓“刘”的学生。

1

SELECT 姓名 FROM 学生 WHERE 姓名 NOT LIKE '刘%’

例28.从学生表表中查询学号的最后一位不是2、3、5的学生信息。

1

SELECT FROM 学生表 WHERE 学号 LIKE '%[^235]'

题解

题目:现在运营想查看所有大学中带有北京的用户的信息,请你取出相应数据。

1

2

SELECT device_id,age,university FROM user_profile

WHERE university LIKE '%北京%'

示例:用户信息表:user_profile

根据示例,你的查询应返回如下结果:

select device_id, age, university from user_profile where university like '%北京%' 

这道题主要考察的是模糊查询 字段名 like '匹配内容'

  1. _ :下划线 代表匹配任意一个字符;

  2. % :百分号 代表匹配0个或多个字符;

  3. []: 中括号 代表匹配其中的任意一个字符;

  4. [^]: ^尖冒号 代表 非,取反的意思;不匹配中的任意一个字符。

tips:面试常问的一个问题:你了解哪些数据库优化技术? SQL语句优化也属于数据库优化一部分,而我们的like模糊查询会引起全表扫描,速度比较慢,应该尽量避免使用like关键字进行模糊查询。

SQL15 查看学校名称中含北京的用户相关推荐

  1. SQL15 查看学校名称中含北京的用户(通配符使用)

    描述 题目:现在运营想查看所有大学中带有北京的用户的信息,请你取出相应数据. 示例:用户信息表:user_profile 根据示例,你的查询应返回如下结果: 示例1 输入: drop table if ...

  2. linux中改localhome名称,修改 /var/lib/locales/supported.d/local 文件(使用 locale -a 命令查看系統中所有已配置的 locale)...

    C 和 C++ 的標准庫分別有自己的 locale 操作方法,C 標准庫的 locale 設定函數是 setlocale(),而 C++ 標准庫有 locale 類和流對象的 imbue() 方法.這 ...

  3. 比较著名的.net技术论坛名称(含国外的)

    比较著名的.net技术论坛名称(含国外的) 名称:快速入门 地址http://chs.gotdotnet.com/quickstart/ 描述:本站点是微软.NET技术的快速入门网站,我们不必再安装. ...

  4. 石家 庄最大计算机学校,全国的所有计算机学校名称

    全国的所有计算机学校名称 北京 北京学大北京工 大业 学北方业大工学北 京刷学院印 北京农院学 北外国语大京 学京物资北院学 北信息京科大技 中国学石大学油北京()中国防卫 科技院 学装兵甲工程院学 ...

  5. Linux的nm查看动态和静态库中的符号

    功能 列出.o .a .so中的符号信息,包括诸如符号的值,符号类型及符号名称等.所谓符号,通常指定义出的函数,全局变量等等. 使用 nm [option(s)] [file(s)] 有用的optio ...

  6. Linux bash符号及含义,Linux下用bash命令执行名称中带有(符号的目录注意事项

    ***********************************************声明************************************************ 原创 ...

  7. 合理运用计算机技术学校,浅议在学校管理中计算机技术合理应用

    浅议在学校管理中计算机技术合理应用 (5页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 浅议在学校管理中计算机技术合理应用[摘 要]目前,随 ...

  8. 怎样查看计算机主题,快速查看win10电脑中的主题壁纸保存位置的方法

    现在很多的小伙伴都是喜欢各种的不同的个性化的设置的,那在win10电脑中下载了自己喜欢的主题和壁纸的小伙伴提问,我们下载的主题壁纸是保存在什么位置的呢,怎么查看保存的路径,其实想要知道这个问题今天小编 ...

  9. 解决稻香老农无组件上传类在文件上传时当文件名中含中文单双引号取不到正确的文件名的方案

    今天完成了对稻香老农的最新版本无组件上传类V2.1的修改. 解决了文件上传时当文件名中含中文单双引号取不到正确的文件名的问题. 参考了无惧上传类,在此感谢稻香老农和梁无惧两位老师,谢谢他们无偿的奉献了 ...

最新文章

  1. swith语句的较安全用法
  2. mstem函数怎么定义_PYTHON--函数定义
  3. Teach Yourself Java 2 in 21 Days 书中样例代码实践
  4. Fiddler抓包 | 竟然有这些骚操作,太神奇了?
  5. adb查看某个文件是否存在_linux实现检查文件夹是否存在不存在则创建
  6. java 数组 null值_数组的元素String在java中包含null
  7. C++--第18课 - 继承与多态 - 下
  8. java------io基础(一)
  9. Pygame安装心得
  10. 《缠中说禅108课》63:替各位理理基本概念
  11. Loading plugin Fxp\Composer\AssetPlugin\FxpAssetPlugin PHP Fatal error: Uncaught Error: Call to unde
  12. 苹果app超级签名怎么弄
  13. 注册表知识:HKEY_LOCAL_MACHINE根键详解
  14. echarts饼图pie中间显示总数
  15. 使用 github copilot 踩坑记录:failed to initiate the github login process please try again
  16. 2022暑初二信息竞赛学习成果分享2
  17. 【超简单】latex 参考文献 引用 跳转 多余的空格
  18. Android P (9.0)刘海屏(DisplayCutout)适配方法
  19. Adobe认证专访|003期:跨界摄影师,我眼中的世界与别人不一样
  20. 突发!三星天津电池工厂爆炸,难道note7的电池还在生产?

热门文章

  1. 单臂路由 + 网管交换机 详细设置
  2. (附源码)ssm高校学生宿舍管理系统 毕业设计051443
  3. Bash脚本编程之算术运算
  4. derain survey
  5. 自动配置SSM Agent使用Windows Server系统相同代理
  6. Office Visio Project在线安装教程
  7. 程序员通过面试,却被面试企业老板一句话送走:年龄太大不要
  8. BZOJ4631 踩气球
  9. 【深度学习实践】基于深度学习的车牌识别(python,车牌检测+车牌识别)
  10. 国产UOS比肩Win10?统信软件放言:要做中国的微软