① sql server 2000 datetime为什么会显示上午下午怎么调整自己机子上的时间设置,让它不显示上午和下午
本机?控制面板——区域选项——时间和日期格式——HH(24小时制)
② sql server 查询如何区分大小写
默认情况下,SQL Server不区分大小写,如果数据表TEST的TNAME列中有数据“abcd”和“Abcd”, 如果使用查询语句:select * from test where tname like 'a%',则查询的结果会把上面的两条记录都查询出来,这一点上和Oracle有区别.
可以通过设置排序规使其区分大小写,可以分别在创建数据库、修改数据库、创建表的字符型列(char\varchar\nchar\nvarchar等)时指定排序规则来实现。如:
1、创建数据库使之区分大小写
create database test COLLATE Chinese_PRC_CS_AS
2、修改数据库使之区分大小写
alter database test COLLATE Chinese_PRC_CS_AS
3、创建表使之区分大小写
create table test(tid int primary key,tname varchar(20) collate chines_prc_cs_as)
③ sql语句判断时间区间的问题
1、首先,我们来定义一个时间字段的参数,暂且命名为Date,语句为:declare @Date datetime。
④ sql语句查询每天的最大时间和最小时间,按天来区分开来这个查询语句怎么写,那位高手帮忙看看
SELECT MAX(你的日期列), CONVERT(VARCHAR(10), RegTime, 102)
FROM [你的表名]
GROUP BY CONVERT(VARCHAR(10), RegTime, 102)
ORDER BY CONVERT(VARCHAR(10), RegTime, 102) DESC
⑤ sql 时间字段里有上午下午全天和具体时间,现在我想排序要怎么排
可以先把具体时间转成时间戳,然后在排序mysql函数UNIX_TIMESTAMP
selectUNIX_TIMESTAMP(time) time from test order by time asc
⑥ 在SQL Server中区分大小写的几种方法
从数据库Collate到存储过程到函数,各种方法都有,选择适合你的。
第一种:ALTER TABLE tb
ALTER COLUMN colname nvarchar(100) COLLATE Chinese_PRC_CI_AS--不区分大小写
ALTER TABLE tb
ALTER COLUMN colname nvarchar(100) COLLATE Chinese_PRC_CS_AS--区分大小写alter database 数据库 COLLATE Chinese_PRC_CS_AS第二种:--创建如下用户自定义函数(UDF)
CREATE FUNCTION StrComp(@Str1 VARCHAR(50
),@Str2 VARCHAR(50))--ALTER FUNCTION StrComp(@Str1 VARCHAR(50
),@Str2 VARCHAR(50))RETURNS INTEGERASBEGINDECLARE @i INTEGER--DECLARE @Str1 VARCHAR(50)--DECLARE @Str2 VARCHAR(50)DECLARE @y INT--SET @Str1='a'--SET @Str2='A'SET @i=0--SELECT ASCII(SUBSTRING(@Str1,@i+1,1))SET @y=1
DECLARE @iLen INTSET @iLen=LEN(LTRIM(RTRIM(@Str1)))
IF LEN(LTRIM(RTRIM(@Str1)))<LEN(LTRIM(RTRIM(@Str2)))--THENSET @iLen=LEN(LTRIM(RTRIM(@Str2)))WHILE (@i<@iLen)BEGINIF (ASCII(SUBSTRING(@Str1,@i+1,1))=ASCII(SUBSTRING(@Str2,@i+1,1)))--THENSET @i=@i+1ELSEBEGINSET @y=0BREAKENDENDRETURN @yEND测试:select*
from Table1
Where dbo.StrComp(Field1,'aAbB')=1第三种:SQL Server 数据库中的文本信息可以用大写字母、小写字母或二者的组合进行存储。例如,姓氏可"SMITH"、"Smith"或"smith"等形式出现。
数据库是否区分大小写取决于 SQL Server 的安装方式。如果数据库区分大小写,当搜索文本数据时,必须用正确的大小写字母组合构造搜索条件。例如,如果搜索名字"Smith",则不能使用搜索条件"=smith"或"=SMITH"。
另外,如果服务器被安装成区分大小写,则必须用正确的大小写字母组合提供数据库、所有者、表和列的名称。如果提供的名称大小写不匹配,则 SQL Server 返回错误,报告"无效的对象名"。
当使用关系图窗格和网格窗格创建查询时,查询设计器始终正确地反映出服务器是否区分大小写。但是,如果在 SQL 窗格中输入查询,则必须注意使名称与服务器解释名称的方式相匹配。
如果服务器是用不区分大小写的选项安装的,则提示若要确定服务器是否区分大小写,请执行存储过程 sp_server_info,然后检查第18 行的内容。如果服务器是用不区分大小写的设置安装的,则 sort_order 选项将设置为"不区分大小写"。可以从查询分析器运行存储过程。
⑦ 用T-SQL语句怎样实现根据当前的时间判断,是上午还是下午还是晚上。
--> 生成测试数据: @T
DECLARE @T TABLE (A INT,B datetime)
INSERT INTO @T
SELECT 1,'07:16:00' UNION ALL
SELECT 2,'09:11:00' UNION ALL
SELECT 3,'11:00:00' UNION ALL
SELECT 4,'12:00:00' UNION ALL
SELECT 5,'13:00:00' UNION ALL
SELECT 6,'15:00:00' UNION ALL
SELECT 7,'17:00:00'union all
select 8,'20:00:00'--SQL查询如下:select * from @t
select a ,b= (case when b between '7:00:00'and '11:59:59' then '上午好'
when b between '12:00:00'and '17:59:59' then '下午好'
else '晚上好'
end )
from @t
(所影响的行数为 8 行)A B
----------- ------------------------------------------------------
1 1900-01-01 07:16:00.000
2 1900-01-01 09:11:00.000
3 1900-01-01 11:00:00.000
4 1900-01-01 12:00:00.000
5 1900-01-01 13:00:00.000
6 1900-01-01 15:00:00.000
7 1900-01-01 17:00:00.000
8 1900-01-01 20:00:00.000(所影响的行数为 8 行)a b
----------- ------
1 上午好
2 上午好
3 上午好
4 下午好
5 下午好
6 下午好
7 下午好
8 晚上好(所影响的行数为 8 行)
⑧ ORACLE 和 SQL区别
这两种数据库在不同方面都有着很大的区别,以下是具体的区别:
1.开放性: 1. SQL Server 只能在windows上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。Windows9X系列产品是偏重于桌面应用,NT server只适合中小型企业。而且windows平台的可靠性,安全性和伸缩性是非常有限的。它不象unix那样久经考验,尤其是在处理大数据库。 2. Oracle 能在所有主流平台上运行(包括 windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持。
2.可伸缩性:并行性 1. SQL server 并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限。 2. Oracle 并行服务器通过使一组结点共享同一簇中的工作来扩展windownt的能力,提供高可用性和高伸缩性的簇的解决方案。如果windowsNT不能满足需要,用户可以把数据库移到UNIX中。Oracle的并行服务器对各种UNIX平台的集群机制都有着相当高的集成度。
3.性能: 1. SQL Server 多用户时性能不佳 2. Oracle 性能最高, 保持开放平台下的TPC-D和TPC-C的世界记录。
4.客户端支持及应用模式 :1. SQL Server C/S结构,只支持windows客户,可以用ADO、DAO、OLEDB、ODBC连接。 2. Oracle 多层次网络计算,支持多种工业标准,可以用ODBC、JDBC、OCI等网络客户连接。
5.操作简便性: 1. SQL Server 操作简单,但只有图形界面。 2. Oracle 较复杂,同时提供GUI和命令行,在windowsNT和unix下操作相同。
6.使用风险性 :1. SQL server 完全重写的代码,经历了长期的测试,不断延迟,许多功能需要时间来证明。并不十分兼容。 2. Oracle 长时间的开发经验,完全向下兼容。得到广泛的应用。完全没有风险。
7.价格:ORACLE贵过SQLSRVER