数据查询基础
一. 數據查詢基礎 1. 查詢所有數據 select * from 表名 2. 根據限制條件查詢數據 select * from 表名 where 限制條件 3. 根據特定列進行排序,默認為升序排列 select * from 表名 order by 排序列名 升序/降序 4. 使用別名AS select StudentName as 學生姓名,GradeId as 年級編號 from Student 5. 使用=號命名別名 select 學生姓名=StudentName,年級編號=GradeId from Student 6. 使用+號拼接數據 SELECT StudentNo+GradeId AS 學生信息 FROM Student 注意:
????1. + 連接的數據類型必須兼容
????2. 如果 + 連接字符型數據,結果為字符串數據的連接
????3. 如果 + 連接數值型數據,結果為數值的和 7. 查詢空值 select * from Student where Emial IS NULL 8.使用常量列 SELECT StudentName AS 學生姓名,'北京昌平' AS 住址 FROM Student 9.使用Top限制數據行 9.1 限制特定數據行數 SELECT top 10 * from Student 9.2 限制特定數據百分比 SELECT TOP 60 PERCENT * FROM Student 二. 多表查詢 思路:確定要查詢的列,以及確定要查詢的表,然后找表與表之間的關系 --查詢學生信息(學生姓名,年級名稱,出生日期以及郵箱),找引用關系
??select studentName,GradeName,BornDate,email from Student,Grade where Student.GradeId=Grade.GradeId --查詢S1年級下的科目名稱
??select SubjectName as 科目名稱 from Subject,Grade where Grade.GradeName='S2' AND Subject.GID=Grade.GradeId --查詢S1年級下所有學生姓名
??select StudentName as 學生姓名 from Student,Grade where Grade.GradeName='S1' AND Student.GradeId=Grade.GradeId --查詢學生編號為1的考試科目以及考試成績
??select SubjectName,StudentResult from Result,Subject,Student where Student.StudentNo=1
??AND Result.StudentNo=Student.StudentNo And Result.SubjectId=Subject.SubjectId 三. SQL函數 1.字符串函數
???用于控制返回給用戶的字符串
??2.日期函數
???用于操作日期值
??3.數學函數
???用于對數值進行代數運算
??4.系統函數
???獲取有關SQL Server中對象和設置的系統信息 詳情請見書上SQL函數表
??年滿20周歲的條件
???DATEDIFF(DD,BornDate, GETDATE())>=365*20 獲取Email的域名
???RIGHT(Email, LEN(Email) - CHARINDEX('@',Email) ) 獲取當前日期的年、月、日
???CONVERT(VARCHAR(4), DATEPART(YYYY,GETDATE())) 獲取4位隨機數
???RIGHT(RAND(),4)
????1. + 連接的數據類型必須兼容
????2. 如果 + 連接字符型數據,結果為字符串數據的連接
????3. 如果 + 連接數值型數據,結果為數值的和 7. 查詢空值 select * from Student where Emial IS NULL 8.使用常量列 SELECT StudentName AS 學生姓名,'北京昌平' AS 住址 FROM Student 9.使用Top限制數據行 9.1 限制特定數據行數 SELECT top 10 * from Student 9.2 限制特定數據百分比 SELECT TOP 60 PERCENT * FROM Student 二. 多表查詢 思路:確定要查詢的列,以及確定要查詢的表,然后找表與表之間的關系 --查詢學生信息(學生姓名,年級名稱,出生日期以及郵箱),找引用關系
??select studentName,GradeName,BornDate,email from Student,Grade where Student.GradeId=Grade.GradeId --查詢S1年級下的科目名稱
??select SubjectName as 科目名稱 from Subject,Grade where Grade.GradeName='S2' AND Subject.GID=Grade.GradeId --查詢S1年級下所有學生姓名
??select StudentName as 學生姓名 from Student,Grade where Grade.GradeName='S1' AND Student.GradeId=Grade.GradeId --查詢學生編號為1的考試科目以及考試成績
??select SubjectName,StudentResult from Result,Subject,Student where Student.StudentNo=1
??AND Result.StudentNo=Student.StudentNo And Result.SubjectId=Subject.SubjectId 三. SQL函數 1.字符串函數
???用于控制返回給用戶的字符串
??2.日期函數
???用于操作日期值
??3.數學函數
???用于對數值進行代數運算
??4.系統函數
???獲取有關SQL Server中對象和設置的系統信息 詳情請見書上SQL函數表
??年滿20周歲的條件
???DATEDIFF(DD,BornDate, GETDATE())>=365*20 獲取Email的域名
???RIGHT(Email, LEN(Email) - CHARINDEX('@',Email) ) 獲取當前日期的年、月、日
???CONVERT(VARCHAR(4), DATEPART(YYYY,GETDATE())) 獲取4位隨機數
???RIGHT(RAND(),4)
轉載于:https://www.cnblogs.com/rzbwyj/p/9358015.html
總結
- 上一篇: MariaDB(MySQL)数据库的介绍
- 下一篇: 微信小程序 之 请求函数封装