SQL server 学习笔记1
1.查询安装的排序规则选项喝当前的排序规则服务器属性
select * from fn_helpcollations();

2.查看当前服务器的排序规则
select serverproperty('Collation') as ServerCollation;

3.修改数据库DB1的排序规则,使他区分大小写
create database DB1
go
alter database DB1
collate SQL_Latin1_General_CP1_CS_AS;
go
select databasepropertyex('DB1','Collation') as DataBaseCollation
4.SQL server不仅可以在服务器、数据库、和列级别设置排序规则,甚至也可以在单独的查询级别设置排序规则。
select * from Product order by name Collate Danish_Norwegian_CI_AI
5.一个有意思的现象,下面查找product表中6个最低的价格:
select top 6 productNumber,Name,ListPrice
from product order by ListPrice desc
结果:
productNumber |
Name |
ListPrice |
| num1 | name1 | 4000 |
| num2 | name2 | 4000 |
| num3 | name3 | 4000 |
| num4 | name4 | 4000 |
| num5 | name5 | 4000 |
| num6 | name6 | 5000 |
看上去,查询简洁且结果不错,但它是错的。如果查看按价格排序的原始数据,你就会发现价格为4000的有5行,而价格位5000的有4行。如果想让4行全部显示出来,就需要用with ties选项,它允许最后的位置包含多行,前提是这些行的值在order by 字句使用的列中有相同的值。查询如下:
select top 6 with ties productNumber,Name,ListPrice
from product order by ListPrice desc
productNumber |
Name |
ListPrice |
| num1 | name1 | 4000 |
| num2 | name2 | 4000 |
| num3 | name3 | 4000 |
| num4 | name4 | 4000 |
| num5 | name5 | 4000 |
| num6 | name6 | 5000 |
| num7 | name7 | 5000 |
| num8 | name8 | 5000 |
| num9 | name9 | 5000 |
SQL server 学习笔记1的更多相关文章
- 【SQL Server学习笔记】Delete 语句、Output 子句、Merge语句
原文:[SQL Server学习笔记]Delete 语句.Output 子句.Merge语句 DELETE语句 --建表 select * into distribution from sys.obj ...
- sql server 学习笔记 ( backup 备份方案 )
做个记入就好 USE [master] SELECT bs.database_name AS 'Database Name', bs.backup_start_date AS 'Backup Star ...
- 【SQL Server学习笔记】事务、锁定、阻塞、死锁 sys.sysprocesses
http://blog.csdn.net/sqlserverdiscovery/article/details/7712068 Column name Data type Description ...
- SQL SERVER学习笔记:临时表与表变量
本文主要摘自徐海蔚的<Microsoft SQL SERVER企业级平台管理实践> 表变量可以作为存储过程的返回参数,而临时表不行.(存疑?表值参数只在SQL SERVER2008才开始支 ...
- sql server 学习笔记 (nested transaction 嵌套事务)
什么时候会用到嵌套事务 ? 为了代码复用,我们会写许多的储蓄过程,而中间如果需要使用到 transaction 难免就会发生嵌套了. sql server 并不直接支持嵌套事务. 但它可以用一些招式来 ...
- sql server 学习笔记 ( row_number, rank, dense_rank over partition by order by )
refer : https://blog.csdn.net/winer2008/article/details/4283539 https://www.cnblogs.com/linJie193090 ...
- Sql Server学习笔记
1.指定路径创建数据库 create database student on--创建库的时候必须写 ( name=student, filename='E:\database\student.mdf' ...
- sql server 学习笔记
1. 修改student表中sdept字段改为varchar类型,长度为30,并且不为空 ) not null 2. 删除student表中的address列 alter table student ...
- 【SQL SERVER学习笔记】Sqlserver游标的尝试
DECLARE @ProName NVARCHAR(50)DECLARE @CityName NVARCHAR(50)DECLARE @ProId INT DECLARE @CityId INT DE ...
随机推荐
- 启动tomcat不出现命令窗口
有个软件要安装在U盘中,B/S结构,用tomcat做应用服务器,客户要求tomcat不能注册为系统服务,启动时tomcat启动时不能出现命令行窗口,怎么实现? 根据你的问题描述,猜测你的部署系统是Wi ...
- leetcode 110 Balanced Binary Tree ----- java
Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary ...
- php归获取当前目录下的二级目录数 和文件数
<?php header('Content-Type: text/html; charset=gb2312'); // $baseDir = "/www/u ...
- Unable to get valid context for root
登陆时报以下错误Unable to get valid context for rootLast login: Wed Jul 24 02:06:01 2013 from 10.64.41.3 单机模 ...
- CentOS搭建LNMP环境
安装开发工具包: yum groupinstall -y "Development Tools*" 50多个,安装了好久…… 下载Nginx: http://nginx.org/e ...
- c语言开发手机通讯录
// // main.c // 手机通讯录 // // Created by Kevin-Dfg on 16/4/19. // Copyright © 2016年 Kevin-Dfg. All ...
- 配置duilib
前两天项目要用duilib重构.苦于网上几乎没有duilib的文档和教程,郁闷之极.那份简单文档上的代码都基本看懂了,就是不知道怎么配置,代码跑不起来! 网络上也几乎没有告诉第一次配置duilib的文 ...
- 内存使用空间之swap建置[转]
http://www.cnblogs.com/ggjucheng/archive/2012/08/22/2651502.html 内存置换空间(swap)之建置 安装时一定需要的两个 partitio ...
- 硬链接与软连接[转自vbird]
前言 在 Linux 底下的连结档有两种,一种是类似 Windows 的快捷方式功能的文件,可以让你快速的链接到目标文件(或目录),这种是软链接: 另一种则是透过文件系统的 inode 连结来产生新档 ...
- 论文笔记之:Attention For Fine-Grained Categorization
Attention For Fine-Grained Categorization Google ICLR 2015 本文说是将Ba et al. 的基于RNN 的attention model 拓展 ...