sql查询语句详解秋弦

Selectselect_listFromtable_nameWherecondition_expressionGroupbygroup_columnshavingcondition_expressionOrderbysort_columns二、查询实例查询所有字段查询指定字段用DISTINCT去除结果中的重复行查询指定数据带有in关键字的查询带betweenand的范围查询带like的字符匹配查询表1:学生

表2:商品表1

表3:商品表2

表4:教师

1)查询所有学生的详细信息

SELECT*from学生;2)查询学生的学生号,姓名与专业

select学生号,姓名,专业from学生;3)从商品表1中查询出每一种商品的价值

SELECT商品代号,单价,数量,单价*数量as总价from商品表1;4)查询本商品表1中商品的种类

SELECTdistinct分类名from商品表1;5)从商品表1中查询出分类名为"电视机"的所有商品

select*from商品表1where分类名='电视机';6)从商品表1中查询出单价低于2000元的每一种商品代号,分类名和单价

select商品代号,分类名,单价from`商品表1`where单价<=2000;7)从商品表2中查询出产地为北京、山西、无锡的所有商品

SELECT*from商品表2where产地in('北京','山西','无锡');8)从商品表1中查询出商品代号以字符串"dsj"开头的所有商品(考察like模糊查询及通配符%)

select*from商品表1where商品代号like'DSJ%'MySQL中的通配符;%,_(下划线),

9)从商品表1中查询单价在1000到2000之间的所有商品

select*from商品表1where单价between1000and2000;10)查询所有姓张的学生的详细信息

select*from学生where姓名like'张_';11)从商品表1中查询出单价大于1500,同时数量大于等于10的商品

select*from选课orderby课程号asc,成绩desc;14)从学生表中查询各个专业的人数

select专业,count(*)as人数from学生groupby专业15)从学生表中查询出专业的学生数多于1人的专业名及人数

select专业,count(*)as人数from学生groupby专业havingcount(*)>1select专业,count(*)as人数from学生groupby专业having人数>116)从选课表中查询成绩最高前三位

select*from选课orderby成绩desclimit317)查询各个专业男女人数各是多少

select专业,性别,count(*)as人数from学生groupby专业,性别18)从商品表1中查询出所有商品的最大数量、最小数量、平均数量及数量总和

selectmax(数量)as最大数量,min(数量)as最小数量,avg(数量)as平均数量,sum(数量)as数量总和from商品表119)从商品表1中查询出分类名为“电视机”的商品的种数、最高价、最低价及平均价

select分类名,count(分类名)as种数,max(单价)as最高价,min(单价)as最低价,avg(单价)as平均价from商品表1where分类名='电视机'20)查询出产地为南京或无锡的所有商品的商品代号、分类名、产地和品牌

selecta.商品代号,b.分类名,a.产地,a.品牌from商品表2ainnerjoin商品表1bona.商品代号=b.商品代号wherea.产地in('南京','无锡')或

selecta.商品代号,b.分类名,a.产地,a.品牌from商品表2a,商品表1bwherea.商品代号=b.商品代号anda.产地in('南京','无锡')21)从教学库中查询出选修了课程名为“操作系统”课程的每个学生的姓名

selectb.姓名,c.课程名from选课ainnerjoin学生bona.学生号=b.学生号innerjoin课程cona.课程号=c.课程号wherec.课程名='操作系统'orb.姓名或

select姓名,课程名from选课a,学生b,课程cwherea.学生号=b.学生号anda.课程号=c.课程号andc.课程名='操作系统'22)从教学库中查询出所有学生的选课情况,要求没选修任何课程的学生信息也要反映出来(左,右连接)

select*from学生aleftjoin选课bona.学生号=b.学生号select*from选课arightjoin学生bona.学生号=b.学生号23)从教学库中查询出选修了课程名为“操作系统”的所有学生(带in的子查询)

select*from学生where选修了课程名为“操作系统”的所有学生进一步分析:select*from学生where学生号in(所有选修了操作系统的学生号名单)所有选修了操作系统的学生号名单?selecta.学生号from选课a,课程bwherea.课程号=b.课程号and课程名='操作系统'最终的代码:select*from学生where学生号in(selecta.学生号from选课a,课程bwherea.课程号=b.课程号and课程名='操作系统')24)查询出比所有商品单价的平均值要高的全部商品(比较运算符)

select*from商品表1where单价>(selectavg(单价)from商品表1)25)从教学库中查询出选修至少一门课程的所有学生(带exists(的子查询)

select*from学生whereexists(select*from选课where选课.学生号=学生.学生号)或

select*from学生where学生号in(selectdistinct学生号from选课)26)从教学库中查询出选修了课程名为“C++语言“的所有学生的姓名和成绩(any子查询)

selectb.姓名,c.课程名,a.成绩from选课ainnerjoin学生bona.学生号=b.学生号innerjoin课程cona.课程号=c.课程号wherec.课程名='C++语言'select姓名,成绩from学生join选课on学生.学生号=选课.学生号where课程号=any(select课程号from课程where课程名='C++语言')27)从商品表1中查询出单价比分类名为“洗衣机”的所有商品单价都高的商品

select*from商品表1where单价>all(select单价from商品表1where分类名='洗衣机')select*from商品表1where单价>(selectmax(单价)from商品表1where分类名='洗衣机')28)从商品表1中查询出单价比分类名为“洗衣机”的所有商品的单价其中一种高的商品

select*from商品表1where单价>any(select单价from商品表1where分类名='洗衣机')and分类名<>'洗衣机'29)查询出每种商品的总价值,并按降序排列

select分类名,sum(单价*数量)as总价from商品表1groupby分类名orderby总价desc30)查询至少选修了王明所选修的所有课程的学生

--王明选修的课程selecta.姓名,b.课程号from学生a,选课bwherea.学生号=b.学生号and姓名='王明'--终极答案select*from学生where姓名!='王明'and学生号in(select学生号from选课where课程号in(select课程号from选课,学生where选课.学生号=学生.学生号and姓名='王明')groupby学生号havingcount(*)=(selectcount(*)from选课,学生where选课.学生号=学生.学生号and姓名='王明'))--终极答案2select*from学生where姓名!='王明'and学生号=any(select学生号from选课where课程号in(select课程号from选课,学生where选课.学生号=学生.学生号and姓名='王明')groupby学生号havingcount(*)=(selectcount(*)from选课,学生where选课.学生号=学生.学生号and姓名='王明'))31)查找选择了课程编号为101和102的学生,把其学号显示出来

select*from选课成绩where课程编号in(101,102)select*from选课成绩where课程编号='101'unionselect*from选课成绩where课程编号='102'unionselect*from选课成绩where课程编号='103'如果希望上述结果中显示课程名称,sql语句如下:

selecta.*,b.课程名称from选课成绩a,课程2bwherea.课程编号=b.课程编号anda.课程编号='101'unionselecta.*,b.课程名称from选课成绩a,课程2bwherea.课程编号=b.课程编号anda.课程编号='102'32)把test1和test2表的数据合并在一起

三、其他补充

33)创建如下表并插入测试数据

要求对此表查询,显示如下结果:

显示结果:姓名语文高数英语李勇907080刘晨607796

34)在SQL中使用正则示例

查询以DS开头的产品select*from商品表1where商品代号regexp'^DS'查询以冰箱结尾的select*from商品表1where分类名regexp'冰箱$'查询商品代号中包含B字符的产品select*from商品表1where商品代号regexp'B.'查询商品代号中包含XTselect*from商品表1where商品代号REGEXP'[XT]'查询商品代号中不包含XT的select*from商品表1where商品代号REGEXP'[^XT]'查询test表中id不包含a-h之间任意一个字符的学员select*fromtestwhereidREGEXP'[^a-h]'查询出商品表1中商品代号包含DB,XY,AHselect*from商品表1where商品代号REGEXP'DB|XY|AH'查询商品表中至少有1个X的商品select*from商品表1where商品代号REGEXP'X{1}'查询商品表1中商品代号中,XY最少出现1次,XY最多出现3次select*from商品表1where商品代号REGEXP'XY{1,3}'35)高级插入语句

insertintotest1(id,name,age)selectid,name,agefromtest2whereid=10636)replace语句用replace插入一条记录时,如果不重复,replace就和insert的功能一样,如果有重复记录,replace就使用新记录的值来替换原来的记录值。语法:

replacetablename(列名...)VALUES(列值);或replacetablenameSETcolumn_namel=value1,column_name2=value2,..;示例:

replacetest1(id,name,age)values(104,'陈阳',22)37)将电子专业的所有学生各门课成绩加5分(techdb成绩表)

update选课set成绩=成绩+5where学生号in(select学生号from学生where专业='电子')13、将员工表中工龄大于30年的工资全部上调20%(northwind)

select姓名,部门,year(now())-year(雇佣日期)as工龄from员工whereyear(now())-year(雇佣日期)>30update员工set目前薪资=目前薪资*1.2whereyear(now())-year(雇佣日期)>3014、将比生产制造部员工最高工资还要高的员工工资下调20%以下这种写法是错误的:

以下代码是错误的:select姓名,部门,目前薪资from员工where目前薪资>(selectmax(目前薪资)from员工where部门='生产制造部')正确的写法是:update员工set目前薪资=目前薪资*0.8where目前薪资>(selectt.最高工资from(selectmax(目前薪资)as最高工资from员工where部门='生产制造部')t)14、将比生产制部中工资排名前三的员工工资任意一个高的员工工资下调10%

select姓名,部门,目前薪资from员工where目前薪资>any(select目前薪资from员工where部门='生产制造部'orderby目前薪资desclimit3)and部门<>'生产制造部'正确的代码是:update员工set目前薪资=目前薪资*0.9where目前薪资>any(selectt.目前薪资from(select目前薪资from员工where部门='生产制造部'orderby目前薪资desclimit3)t)and部门<>'生产制造部'

THE END
1.商品扫一扫查价格软件排行榜前十名好用的扫码查价格APP推荐商品价格扫码查询软件查商品价格条码扫描软件手机扫码查价格软件查价格条码扫描软件扫码查价格软件蔬菜价格查询app商品比价软件扫酒二维码价格软件二手车价格查询软件二手车评估价格查询软件扫一扫识别物品的软件汽车评估价格查询软件扫价格的软件废品回收价格行情app免费扫一扫识别古董估价软件护肤品查日期...https://m.pianwan.com/s/zj-1006183
2.如何查询手机天猫淘宝京东等商城的商品历史价格第一、 首先,我们要在手机下载一款免费软件,如图所示,手机浏览器搜索历史价格查询,下载并安装该app到手机上。 第二、 然后,我们任意打开一个商品详情页以京东为例,如图所示,点击右上角分享按钮。 第三、 底下会弹出浮动框,如图所示,我们点击复制链接。 第四、 然后,我们打开新下载的app,会出现如图所示的提示,...http://m.qicaisi.com/bk-1170899.shtml
3.发货商品详情上海管易云ERP11.到账类型:订单管理>订单查询>到账状态 12.仓库名称:订单管理>发货单查询>基本信息>仓库名称 13物流公司:订单管理>发货单查询>基本信息>仓库名称 14.业务员:订单管理>订单查询>业务员 15.会员名称:订单管理>发货单查询>基本信息>会员名称 16.平台商品名称:订单管理>订单查询>商品明细>平台商品名称 ...http://gop.guanyierp.com/hc/kb/article/1396486/
4.广东省高明监狱2024年生鲜蔬果及塘鱼临时采购项目即:该品种结算价=该品种最高限价×折扣率(%)。 例如:投标人报折扣率为80%,结算价为该品种最高限价×80%。 (二)类别及商品名称: 序号 类别 商品名称 规格 单位 最高限价(单位:元) 备注 1 绿叶菜类 菠菜 公斤 8.45 2 西芹 公斤 7.86 3 根芹菜 公斤 7.72 4 叶用莴苣(...https://www.cgwenjian.com/view/file/202411180001580759
5.第6章?如何获取数据库中的数据单击工具栏中的“运行”按钮或选择“查询”菜单中的“运行查询”命令,以默认的浏览状态显示出日销售情况表,如图6-5所示。 6.2.2多表“查询”日销售商品情况 上面的查询日销售商品情况是应用一个数据表进行查询的,如果希望销售商品情况表表达得更完善,这里可增加一个商品信息表spxx.dbf参与查询,从中获得商品名称.sp...http://www.360doc.com/content/11/0208/20/1911688_91433889.shtml
1.例题38查询自动售货机中商品的价格给定四种商品,分别是薯片(crisps)、爆米花(popcorn)、巧克力(chocolate)和可乐(cola),单价分别对应为3.0元/公斤、2.5元/公斤、4.0元/公斤、3.5元/份。 首先在屏幕上显示以下菜单: [1] crisps [2] popcorn [3] chocolate [4] cola [0]exit 用户可以输入编号1~4查询对应食品的单价。当连续查询次数超过5次时...https://blog.csdn.net/2401_87110829/article/details/143859884
2.拼多多价格查询?拼多多价格查询网站?在当今电商迅猛发展的时代,拼多多以其独特的社交电商模式和极具竞争力的价格吸引了大量消费者,对于许多精明的购物者来说,如何在拼多多上快速、准确地查询到商品的价格信息,成为了提升购物体验的关键,本文将围绕“拼多多价格查询”和“拼多多价格查询网站”两个主题,为您提供详尽的使用指南。 https://www2.duoduodashi.com/zixun/240.html
3.销售合同范本(精选20篇)五、最低代理销售量乙方承诺向甲方的订货量为每月平均,如果___年内不能完成销售指标的,甲方有权取消乙方代理资格。 六、代理商品价格 1、配送价格:甲方向乙方统一配送产品的价格。 2、销售价格:乙方应当按照甲方建议(规定)的零售价格销售产品(服务)。如果甲方建议(规定)的零售价格不符合本地区市场情况,乙方需调整...https://www.unjs.com/fanwenwang/hetongfanben/20221113153909_5942786.html
4.供货协议书(通用15篇)一、供货产品:甲方向乙方供给其总经销的商品供乙方超市销售,详细供货商品名称由乙方参见甲方所供给的商品目录,由乙方自行选定。 二、供货价格:具体价格参见乙方供给的价格表。 三、产品质量:甲方向乙方供给的产品必须附合国家行业规定的相关标准,且是在保质期内的商品,若甲方供给的商品本身出现质量问题,甲方应无条件包...https://www.9136.com/shiyongwendang/hetong/201960.html
5.关于销售合同(精选15篇)商品名称 规格型号 单位 数量 单价 材质及其它 金额 合计人民币金额(大写):___ 小写合计 二、交(提)货地点,方式___。 三、商品保修期(___)内,如出现质量问题,应由厂方负责修理(___),更换(___) 四、付款方式及期限:甲乙双方确定以___方式支付货款。 a、一次...https://www.fwsir.com/fanwen/html/fanwen_20230415155203_2706971.html
6.产品供货合同(精选16篇)乙方以报价单以税后的价格提供给甲方,(保证提供的商品是全市正常的最低价),如发现___有一家商家以低于乙方给甲方供应价销售的,甲方有权扣除差额部分或拒付货款。如商品进货价格有任何变动,乙方应于一个月前以书面形式通知,(或临时的促销活动也应提前书面形式通知)甲乙双方协商新的价格。双方就新价格生效日期之前...https://www.wenshubang.com/hetongdaquan/1967348.html
7.长期供货合同(通用18篇)供方:___ 合同编号: 需方:___ 签订地点: 签订时间: 年月日 一、产品名称、品种、数量、金额、交售时间 产品 计量 总金 交售时间及数量 品种 数量单价 名称 单位 额 合计 合计人民币金额(大写) (注:空格如不够用,可以另接) 二、质量标准、用途 三、验收办法及时间、...https://www.yjbys.com/hetongfa/hetongfanben/1807731.html
8.查询商品表(product),把查询结果中的“商品编号”(productNo)与...查询商品表(product),把查询结果中的“商品编号”(productNo)与“商品名称”(productName)作为一个字段进行输出,两者之间以符号“+”隔开。https://www.shangxueba.com/ask/20557217.html
9.重磅!全文!现行报关单填制规范(2018年8月1日起),敬请留存三十一、随附单证及编号 三十二、标记唛码及备注 三十三、项号 三十四、商品编号 三十五、商品名称及规格型号 三十六、数量及单位 三十七、单价 三十八、总价 三十九、币制 四十、原产国(地区) 四十一、最终目的国(地区) 四十二、境内目的地//境内货源地 http://yue.52wmb.com/article/16040
10.代销合同范本15篇2、订单应当明确商品的名称、生产厂厂名和厂址、规格、计量单位、品牌、质量、产地、数量、单价、交货时间、交货地点等具体内容。 3、甲方收到订单后应当在1个工作日内对能否接受订单予以明确答复,答复形式同订单形式一致;不予答复的,视为不接受订单。如答复中对订单具体内容有修改的,乙方应当在1 个工作日内表示是...https://www.jy135.com/hetongfanben/974232.html