一、字符转换函数
1、ASCII()
返回字符表达式最左端字符的ASCII 码值。在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错。
2、CHAR()
将ASCII 码转换为字符。如果没有输入0 ~ 255 之间的ASCII 码值,CHAR() 返回NULL 。
3、LOWER()和UPPER()
LOWER()将字符串全部转为小写;UPPER()将字符串全部转为大写。
4、STR()
把数值型数据转换为字符型数据。
STR (<float_expression>[,length[, <decimal>]])
length 指定返回的字符串的长度,decimal 指定返回的小数位数。如果没有指定长度,缺省的length 值为10, decimal 缺省值为0。
当length 或者decimal 为负值时,返回NULL;
当length 小于小数点左边(包括符号位)的位数时,返回length 个*;
先服从length ,再取decimal ;
当返回的字符串位数小于length ,左边补足空格。
二、去空格函数
1、LTRIM() 把字符串头部的空格去掉。
2、RTRIM() 把字符串尾部的空格去掉。
三、取子串函数
1、left()
LEFT (<character_expression>, <integer_expression>)
返回character_expression 左起 integer ......
当装上了MSSQL2005后,内存的占用会变得很大。所以如果用一个批量处理来开启或关闭MSSQL2005所有的服务,那将会让我们的电脑更好使用。根据自己的经验,做出了下面两个批处理:
1、开启服务:(复制横线的内容,注意,服务器真正的名称你可以通过“开始--》控件面版--》管理工具--》服务--》找到相应的服务器显示名称然后点击右键,可以看到常规里有一个‘服务器名称’,那个才是服务的真正名称”)
---------------------------------------------------------------------------------------------------
@ECHO OFF
ECHO 正在启动MS Server 2005相关服务,请等待 ... ...
net start MSSQL$MSSQL
net start SQLAgent$MSSQL
net start MSOLAP$MSSQL
net start SQLBrowser
net start msftesql$MSSQL
net start ReportServer$MSSQL
net start MsDtsServer
echo MS Server 2005已成功启动,请按任意键退出... ...
echo. & pause
---------------------------------------------------------------------------------------------- ......
这个题目听起来十分拗口,英文应该这样写“How to find the service pack version installed on SQL Server using”,这个问题我一直在找,SQL Server一直没有像其他软件一样可以直接查看到版本+补丁号的方法,今天到一个老外的网站终于找到了:
有个步骤:
第一步:使用SQL语句查询
select @@version
查询结果如下: Microsoft SQL Server 2000 - 8.00.2039 (Intel X86)
May 3 2005 23:18:38
Copyright (c) 1988-2003 Microsoft Corporation
Personal Edition on Windows NT 5.1 (Build 2600: Service Pack 2) 其实在C:\Program Files\Microsoft SQL Server\MSSQL\Binn\sqlservr.exe
点击鼠标右键查看版本也能得到,不过信息比较简单而已。8.00.2039就代表安装的SQL Server的版本了。对应以下的表格,可以查出来具体对应的补丁版本。8.00.2039表示安装了SP4,8.00.760表示安装了SP3。
第二步:对照表格查找具体的补丁版本
SQL Server Versions
@Version SQL Server Version Released
6.50.201 SQL Server 6.5 RTM
6.50.213 SQL Server 6.5 with Service Pack 1 ......
一
SQL重复记录查询(转自http://blog.csdn.net/RainyLin/archive/2009/02/17/3901956.aspx)
SQL重复记录查询
1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断
select * from people
where peopleId in (select peopleId from people group by peopleId having count
(peopleId) > 1)
2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录
delete from people
where peopleId in (select peopleId from people group by peopleId having count
(peopleId) > 1)
and rowid not in (select min(rowid) from people group by peopleId having count(peopleId
)>1)
3、查找表中多余的重复记录(多个字段)
select * from vitae a
where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having
count(*) > 1)
4、删除表中多余的重复记录(多个字段),只留有rowid最小的记录
delete from vitae a
where (a.peopleId ......
SQL重复记录查询
1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断
select * from
people
where peopleId in (select peopleId from people group by peopleId
having count
(peopleId) > 1)
2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录
delete from people
where peopleId in (select peopleId from people group by peopleId
having count
(peopleId) > 1)
and rowid not in (select min(rowid) from people group
by peopleId having count(peopleId
)>1)
3、查找表中多余的重复记录(多个字段)
select * from vitae a
where (a.peopleId,a.seq)
in (select peopleId,seq from vitae group by peopleId,seq having
count(*) > 1)
4、删除表中多余的重复记录(多个字段),只留有rowid最小的记录
delete from vitae a
where
(a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq
having
count(*) > 1) ......
MMC 不能打开文件 C:\Program Files\Microsoft SQL Server\80\Tools\BINN\SQL Server Enterprise Manager.MSC。可以原因是文件不存在,不是一个MMC控制台,或者用后来MMC版本创建,也许也没有访问此文件的足够权限。
解决方法:
重新创建此文件,运行对话框中输入:mmc
1) 控制台-->添加/删除管理单元-->添加-->找到Microsoft SQL 企业管理器-->添加-->关闭-->确定
回到控制台控制台-->选项-->控制台模式选择"用户模式完全访问"-->将下面的选择全部取消
2) 然后:控制台-->另存为-->C:\Program Files\Microsoft SQL Server\80\Tools\BINN\SQL Server Enterprise Manager.MSC ......