首頁 資料庫 mysql教程 Mysql中的DQL查询语句_MySQL

Mysql中的DQL查询语句_MySQL

Jun 01, 2016 pm 01:32 PM
where 記錄

bitsCN.com

----------------1、查询所有列 --查询 学生 表所有记录(行) select *from 学生

--带条件的查询 select *from 学生 where 年龄>19

-------------------2、查询指定的列 --查询 所有人的姓名和性别 select 姓名,性别 from 学生

--查询 所有 年龄>19 的学生的 姓名 select 姓名,地址 from 学生 where 年龄>19

/*比较运算符 = > = 不等于 !>不大于 !

--方式二 select 姓名,地址as家乡 from 学生

-----------------------4、消除重复 --查询该表有哪些家乡 select distinct 地址 from 学生

----------------------5、top n(查询前N条) select top 3 * from 学生 --查询前3条记录

-----------------------6、排序 select *from 学生 order by 年龄 asc     --按年龄进行升序排列                        --desc降序         --asc升序

select * from  学生 order by 年龄 desc ,编号 asc ---按年龄降序 --先按年龄进行降序,在出现相同年龄的时候,把这些相同的学生 再按照 学号 升序排列

--例:查询 学生 表中,年龄最大的三个学生的 年龄、姓名、编号 select top 3  年龄,姓名,编号 from 学生 order by 年龄 desc

-------------------------------7、 and(并且)、or(或者) select *from 学生 where 年龄=20 and 姓名='张三'

--例如:查询 性别为男的 或 专 地址为武汉 select *from 学生 where 性别='男'  or 地址='武汉'

----------------------8、between ... and(介于...之间) --例:查询年龄为20-30之间的所有人 select *from 学生 where 年龄 between 20 and 30

-----------------------9、in 的用法 select * from 学生 where 年龄 in(20,19,18)

---------------------------10、top N  与 order by 同时使用

--例:查询年龄最大的一人 select top 1 with ties * from  学生  --加了with ties 后 如有并列第一的就全都显示 order by 年龄 desc

---------------------------------11、case替换查询结果 --查询所有人信息,如果年龄>=40岁,就显示"中年人", --     如果年龄 介于30-39  ,就显示“青年” --     如果年龄  介于20-29 ,就显示“青少年” --     如果年龄   小于20  , 就显示“少年”

select 学号,姓名,性别, 年龄=case   when 年龄>=40 then '中年人'   when 年龄 between 30 and 39 then '青年'   when 年龄 between 20 and 29  then '青少年'   else '少年' --else表示不满足以上条件时,就全部  end ,住址 from 学生

-----------------------------------12、模糊查找 使用like子句进行模糊查询 like子句与通配符配合使.Sql server提供4种通配符 1.%:表示任意字符 2. _:表示单个任意字符 3.[ ]:表示方括号里列出的任意一个字符. 4.[^]:表示任意一个没有在方括号里列出的字符.

--例:查找姓周的所有人信息 select * from 学生 where 姓名 like '周%' --%可以代替任意几个字符

select * from 学生 where 姓名 like '周_' --_表示可以代替一个字符

--例:查找姓名的第二个字包含 ’心‘ 或者 ’三‘ 的人 select * from 学生 where 姓名 like '_[星,三]_'

 

--嵌套查询(一般嵌套请不要超过3层,即不要出现超过3个select) select * from 学生  where 年龄

  --例如:查询所有比 中文系所有学生年龄 大的学生 select * from xs where 年龄> (  select top 1 年龄 from xs  where 所在系='中文'  order by 年龄 desc )

/*运算符  all some   any  */ 

/* all:指定表达式要与子查询结果集中的每个值都进行比较,当表达式与每个值都满足比较的关系时,才返回true,否则返回false;

Some和any:表示表达式只要与子查询结果集中的某个值满足比较的关系时, 就返回true,否则返回false.

*/

select * from xs where 年龄>all (  select 年龄 from xs where 所在系='中文' )

----------------------------------表的复制 /*把所有计算机系的学生拉出来单独创建一个表*/

create  table  xs_jisuanji    --创建一个新表 (  学号 int,  姓名 varchar(50),  性别 char(10),  年龄 int )

insert into xs_jisuanji       --查询内容 并复制内容到新建的表 select 学号 ,姓名, 性别, 年龄 from xs where  所在系='计算机'H

 

/*复制方式二*/   --创建中文系的表 select 学号,姓名,性别 ,年龄 into xs_zhongwen from xs where 所在系='中文'

---跨数据库表的复制(需要在 表名前加数据库名) select  * into test.dbo.xs  from   n2d09003

 

 

-------------------------------------------- --聚合函数

--求学生总分 select sum(成绩) as 总分数 from xs

--求分数最高分 select max(成绩) as 最高分 from xs

-- 求最低分 select min(成绩) as 最低分 from xs

--求平均分 select avg(成绩) as 平均分 from xs

--统计有多少名学生 select count(成绩) as 人数 from xs

---------------------------------------分类汇总 group by --例1

--查询学生表中有哪些专业 select distinct 所在系 from xs

--group by 实现 select 家乡 from N2D09003 group by 家乡

--例2 求每个地方的学生数 select 家乡,count (*) as 人数 from N2D09003 group by 家乡  --按照家乡  进行分类汇总

--[例3]求每个地方 男生和女生的人数 select 家乡,性别,count(*) as 人数 from N2D09003 group by 家乡,性别  --按照家乡 和  性别 进行分类汇总

/*` [特别注意:1:select 后面出现的列名,必须出现在group by 后面] 2:group by与order by连用,order by 子句中可包含聚合函数. 3、group by关键字后可以使用多个字段名作为分组字段,这样, 系统将根据这些字段的先后顺序对结果集进行更加详细地分组。

--[例4]求每个地方的总人数,并且按照人数从多到少排序 select 家乡,count(*) as 人数 from N2D09003 group by 家乡 order by 人数 desc    --这里的order by 后面可以是聚合函数(如果需要的话)

select * from xs order by max(年龄) dese --错误  不满足使用要求第二条

--------------------------------------------------------------09.12.04

-------------------------------------group by ...having --作用:分类汇总后,再进行筛选 /*查询每个专业总人数,并且显示 总人数>3人的专业*/ select 所在系 , count(*) as  人数 from  xs group  by 所在系 having count(*)>3  --筛选出人数>3人的专业

--------------------group by ....with rollup select 所在系, count(*) as 人数 from xs group by 所在系,性别 with rollup  --在分类汇总之后,再次汇总

select 所在系,性别, count(*) as 人数 from xs group  by 所在系,性别 with rollup  --在分类汇总之后,再次汇总

-------------------group by .... with cube select 所在系,性别,count(*) as 人数 from xs group by 所在系,性别 with cube --比rollup 汇总的更详细(按照 group by 后面的列进行再次汇总)

------------------------------------------------链接查询 /*查找选修了课程号为2且成绩在80分以上的学生姓名和成绩*/ select 姓名,xx.成绩 from xs,xx where xs.学号=xx.学号  --两表链接条件 and 课程号=2 and xx.成绩>80

--加了 表名.列名 (一般无需在列名之前加表名前缀,只有当两个表有相同的列名时才加前缀) select xs.姓名,xx.成绩 from xs,xx where xs.学号=xx.学号  --两表链接条件 and xx.课程号=2 and xx.成绩>80

-----------------------查询  刘德华的成绩 --方式一 省略前缀 select xx.成绩 from xx,xs        where  xx.学号=xs.学号 and 姓名='刘德华'

--方式二 嵌套查询 select 成绩 from xx where 学号=    ( select 学号 from xs where 姓名='刘德华' )

--方式三 内联式查询 select  xx.成绩 from xx            join xs on  xs.学号=xx.学号     --两表连接条件 where 姓名='刘德华'             --其他限制条件

--查询林心如的古汉语成绩 select 姓名, 课程名 ,xx.成绩

from xs  join  xx on  xs.学号=xx.学号          join  kc on  kc.课程号=xx.课程号 and 姓名='林心如' and 课程名='古汉语'

select 姓名 ,课程名 ,xx.成绩 from  xs,xx,kc where xs.学号=xx.学号 and xx.课程号=kc.课程号 and 姓名='林心如' and 课程名='古汉语'

select 成绩 from xx where 课程号= ( select 课程号 from kc where 课程名='古汉语' ) and 学号= ( select 学号 from xs where 姓名='林心如' )

bitsCN.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1317
25
PHP教程
1268
29
C# 教程
1246
24
拼多多買過的東西在哪裡查看記錄 查看買過的商品記錄的方法 拼多多買過的東西在哪裡查看記錄 查看買過的商品記錄的方法 Mar 12, 2024 pm 07:20 PM

拼多多軟體內提供的商品好物非常多,隨時隨地想買就買,而且每一件商品品質都是嚴格把關的,件件商品都是正品,不同還有非常多優惠的購物折扣,讓大家網購根本停不下來。輸入手機號碼在線登錄,在線添加多個收貨地址和聯繫方式,可以隨時查看最新的物流動態,不同品類的商品板塊都是開放的,搜索上下滑動選購下單,足不出戶輕鬆體驗便捷的網購服務,還能查看所有的購買記錄,包括自己買過的商品,數十個購物紅包、優惠券免費領取使用,現在小編在線詳細為拼多多用戶們帶來查看買過的商品記錄的方法。  1.打開手機,點選拼多多圖標,

如何查看和管理 Linux 命令歷史記錄 如何查看和管理 Linux 命令歷史記錄 Aug 01, 2023 pm 09:17 PM

如何在Linux中查看命令歷史記錄在Linux中,我們使用history命令來查看所有先前執行的命令的清單。它有一個非常簡單的語法:history與歷史記錄命令配對的一些選項包括:選項描述-c清除當前會話的命令歷史記錄-w將命令歷史記錄寫入檔案-r從歷史記錄檔案重新載入命令歷史記錄-n限制最近命令的輸出數量只需執行history命令即可在Linux終端機中查看所有先前執行的命令的清單:除了查看命令歷史記錄之外,您還可以管理命令歷史記錄並執行修改先前執行的命令、反向搜尋指令歷史記錄甚至完全刪除歷史記

如何在iPhone中檢查通話記錄並將其匯出? 如何在iPhone中檢查通話記錄並將其匯出? Jul 05, 2023 pm 12:54 PM

iPhone中的通話記錄經常被低估,並且是iPhone最關鍵的功能之一。憑藉其簡單性,此功能具有至關重要的意義,可提供有關在裝置上撥打或接聽的通話的重要見解。無論是出於工作目的還是法律訴訟,存取通話記錄的能力都被證明是無價的。簡單來說,通話記錄是指每當撥打或接聽電話時在iPhone上建立的條目。這些日誌包含關鍵訊息,包括聯絡人的姓名(如果未另存為聯絡人,則為號碼)、時間戳記、持續時間和呼叫狀態(已撥打、未接聽或未接聽)。它們是您的通訊歷史記錄的簡明記錄。通話記錄包括儲存在iPhone上的通話記錄條

如何在iPhone上的健康應用程式中查看您的用藥日誌記錄 如何在iPhone上的健康應用程式中查看您的用藥日誌記錄 Nov 29, 2023 pm 08:46 PM

iPhone可讓您在「健康」App中添加藥物,以便追蹤和管理您每天服用的藥物、維生素和補充劑。然後,您可以在設備上收到通知時記錄已服用或跳過的藥物。記錄用藥後,您可以查看您服用或跳過用藥的頻率,以幫助您追蹤自己的健康狀況。在這篇文章中,我們將指導您在iPhone上的健康應用程式中查看所選藥物的日誌歷史記錄。如何在「健康」App中查看用藥日誌歷史記錄簡短指南:前往「健康」App>瀏覽「>用藥」>用藥「>選擇一種用藥>」選項「&a

如何進行Java開發專案的日誌記錄與監控 如何進行Java開發專案的日誌記錄與監控 Nov 03, 2023 am 10:09 AM

如何進行Java開發專案的日誌記錄與監控一、背景介紹隨著網路的快速發展,越來越多的企業開始進行Java開發,建構各種類型的應用程式。而在開發過程中,日誌記錄和監控是一個不可忽視的重要環節。透過日誌記錄與監控,開發人員可以及時發現和解決問題,確保應用程式的穩定性和安全性。二、日誌記錄的重要性1.問題追蹤:在應用程式發生錯誤時,日誌記錄可以幫助我們快速定位問題

C#開發建議:日誌記錄與監控系統 C#開發建議:日誌記錄與監控系統 Nov 22, 2023 pm 08:30 PM

C#開發建議:日誌記錄與監控系統摘要:在軟體開發過程中,日誌記錄與監控系統是至關重要的工具。本文章將介紹C#開發中日誌記錄與監控系統的作用與實施建議。引言:在大型軟體開發專案中,日誌記錄和監控是不可或缺的工具。它們可以幫助我們即時了解程式運行狀況,快速發現並解決問題。本文將討論C#開發中如何使用日誌記錄和監控系統,以提高軟體品質和開發效率。日誌記錄系統的作用

Laravel 集合中的 Where 方法實用指南 Laravel 集合中的 Where 方法實用指南 Mar 10, 2024 pm 04:36 PM

Laravel集合中的Where方法實用指南在Laravel框架的開發過程中,集合(Collection)是一個非常有用的資料結構,它提供了豐富的方法來操作資料。其中,Where方法是常用的篩選方法,能夠根據指定條件來過濾集合中的元素。本文將介紹Laravel集合中Where方法的使用,透過具體的程式碼範例來示範其用法。 1.基本用法Where方法的

Laravel 集合如何使用 Where 方法 Laravel 集合如何使用 Where 方法 Mar 10, 2024 pm 10:21 PM

Laravel集合中如何使用Where方法Laravel是一個流行的PHP框架,它提供了豐富的功能和工具,方便開發者快速建立應用程式。其中,集合(Collection)是Laravel中一個非常實用且強大的資料結構,開發者可以使用集合對資料進行各種操作,例如過濾、映射、排序等。在集合中,Where方法是一個常用的方法,用於根據指定的條件過濾集

See all articles