• 全部
  • 基础类
  • 应用实例
  • 新技术前沿

where nvarchar2='一值' 这个条件写错了癦??

xiaohehe922 2008-02-29 05:16:10
datetime1该字段内容为‘2007-1-28’,nvarchar2该字段里内容为‘一值’

但是我这么写:
select * from table where year(datetime1)=2007 and nvarchar2='一值'
查出0条记录
但是我这么写:
select * from table where year(datetime1)=2007 查出了这条记录

敢问是何原因,难道nvarchar2='一值' 这样写不对??
...全文
51 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
xiaohehe922 2008-02-29
各位,解决!

原因让我崩溃:where nvarchar2=N'一值'
回复
mnc898 2008-02-29
lz,试了你的代码没有问题,可能是上面说的有空格了.
回复
wzy_love_sly 2008-02-29
create table tb (nvarchar1 varchar(10),nvarchar2 varchar(10),datetime1 datetime,float1 int)
insert into tb select null,'一值','2007-1-28',21
insert into tb select null,'二值','2007-1-29',22

select * from tb
where year(datetime1)=2007 and nvarchar2='一值'


nvarchar1 nvarchar2 datetime1 float1
NULL 一值 2007-01-28 00:00:00.000 21

能出来啊,没改语句
回复
xiaohehe922 2008-02-29
表大概是这个样子:
nvarchar1 nvarchar2 datetime1 float1
NULL 一值 2007-1-28 21
NULL 二值 2007-1-29 22
回复
xiaohehe922 2008-02-29
这里怎么不能贴图片 - -
回复
dawugui 2008-02-29
select * from table where year(datetime1) = 2007 and rtrim(nvarchar2)='一值'   

nvarchar2是oracle的东西吧?
回复
wzy_love_sly 2008-02-29
把结果放出来看下,nvarchar2不对吧?
回复
pt1314917 2008-02-29

--存在空格?试着去下空格看看
select * from table where year(datetime1)=2007 and replace(nvarchar2,' ','')='一值'
回复
相关推荐
发帖
MS-SQL Server
创建于2007-09-28

3.3w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
帖子事件
创建了帖子
2008-02-29 05:16
社区公告
暂无公告