sqlserver排序:SQL Server中对查询结果随机排序来源: 发布时间:星期四, 2009年2月12日 浏览:79次 评论:0
查询结果随机排序: SELECT * FROM table ORDER BY NEWID 用条语句得出某日期所在月份最大天数 SELECT DAY(DATEADD(dd, -1, DATEADD(mm, 1, DATEADD(dd, 1-DAY('2004-8-31'), '2004-8-31')))) AS 'Day Number' SQL SQRSVER常用涵数 涵数名称 使用思路方法/参数说名/例证 CONVERT涵数 "将B变量数据类型变为A类型CONVERT(A类型,@B变量)" GETDATE涵数 GETDATE取得系统时间 ISNULL涵数 ISNULL(@A变量,B)变量@A是NULL时返回B值,反的返回本身 ROUND涵数 "ROUND(@B变量,常数C)B变量小数点后C位置 4舍 5入例证:ROUND(3.3,0)=3" LOWER涵数 LOWER把串全部转换为小写 LOWER(@A) UPPER涵数 UPPER把串全部转换为大写 UPPER(@A) ASCII涵数 ASCII返回表达最左端ASCII码值 ASCII(@A) CHAR涵数 CHAR用于将ASCII码转换为 CHAR(@A) STR涵数 STR() 把数值型数据转换为型数据 STR(@A) LTRIM涵数 LTRIM()把串头部空格去掉 LTRIM(@A) RTRIM涵数 RTRIM()把串尾部空格去掉 RTRIM(@A) LEFT涵数 "LEFT返回部分串 LEFT(@A,4)返回@A左边 4位" RIGHT涵数 RIGHT返回部分串 RIGHT(@A,4)返回@A右边 4位 SUBSTRING涵数 "SUBSTRING()返回部分串 SUBSTRING(@A,5,2)返回@A左边第 5位开始取两个" REPLACE涵数 "REPLACE()返回被替换了指定子串串 REPLACE(@A,'-','')将@A中'-'转换为''" NULLIF 涵数 " NULLIF (<expression1>, <expression2>) NULLIF 在expression1 和expression2 相等时 返回NULL 值,若不相等时则返回expression1 值. 其返回值类型和expression1 相同. expression1 和expression2 应为同类数据类型." 找出学生科成绩最高信息: 表1 ID 姓名 科目 成绩 1 小王 语文 81 2 小王 数学 69 3 小王 英语 67 4 小李 语文 62 5 小李 数学 100 6 小李 英语 60 7 小张 语文 80 8 小张 数学 81 9 小张 英语 77 要求查询出每个人最高分. 结果 ID 姓名 科目 成绩 1 小王 语文 81 5 小李 数学 100 8 小张 数学 81 Select a.* from 表1 a,(Select 姓名,max(成绩) 成绩 from 表1 group by 姓名) b where a.姓名=b.姓名 and a.成绩=b.成绩 //思路 先 根据学生分组 找出最高分数 (有可能并列) Select 姓名,max(成绩) 成绩 from 表1 group by 姓名 在拿结果到表1中 用上面结果作为条件 查询 0
相关文章
读者评论发表评论 |