SQL where in 语句顺序问题
现在获取到了一组ID字段的值,然后我想依据这组值把相关数据取出来。数据库中数据时这样:idname----------1001name11002name21003name...
现在获取到了一组ID字段的值,然后我想依据这组值把相关数据取出来。
数据库中数据时这样:
id name
----- -----
1001 name1
1002 name2
1003 name3
1004 name4
1005 name5
select id , name from test where id=('1001','1005','1003');
但是,我想要按照'1001','1005','1003'的顺序取出来,而上面语句无法实现,不知道该怎么写,或者有类似的语句能实现的,打架请告诉我,谢谢啦
是的,谢谢大家,语句确实写错了,应该是select id , name from test where id in('1001','1005','1003');
简单说 in()里面这个就是我获取的字符串,没办法,我现在时改别人的程序,字段类型已经固定了,只能是varchar2了,只能这样了,再次谢谢大家。看来只有用lvxianling兄弟的办法了,非常感谢。 展开
数据库中数据时这样:
id name
----- -----
1001 name1
1002 name2
1003 name3
1004 name4
1005 name5
select id , name from test where id=('1001','1005','1003');
但是,我想要按照'1001','1005','1003'的顺序取出来,而上面语句无法实现,不知道该怎么写,或者有类似的语句能实现的,打架请告诉我,谢谢啦
是的,谢谢大家,语句确实写错了,应该是select id , name from test where id in('1001','1005','1003');
简单说 in()里面这个就是我获取的字符串,没办法,我现在时改别人的程序,字段类型已经固定了,只能是varchar2了,只能这样了,再次谢谢大家。看来只有用lvxianling兄弟的办法了,非常感谢。 展开
展开全部
你的语句有问题应该这样
select id , name from test where id in('1001','1005','1003');
如果你想按顺序的话 这样就可以
select id , name from test where id='1001'
union all
select id , name from test where id='1005'
union all
select id , name from test where id='1003'
select id , name from test where id in('1001','1005','1003');
如果你想按顺序的话 这样就可以
select id , name from test where id='1001'
union all
select id , name from test where id='1005'
union all
select id , name from test where id='1003'
展开全部
如果想这样显示出来,那么它的排序方式就要发生改变,你没有给排序方式 的时候,一般都是按照第一个字段进行排序,你在后面加一个order by name就可能达到你想要的目的,但是不完全这样,因为你想要达到的目的不一定是按照name字段排序的,可能只是你自己的一时想法,可能很难实现。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select id , name from test where id in (1001,1005,1003); 取出来就是按顺序的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的语句有问题应该这样
select
id
,
name
from
test
where
id
in('1001','1005','1003');
如果你想按顺序的话
这样就可以
select
id
,
name
from
test
where
id='1001'
union
all
select
id
,
name
from
test
where
id='1005'
union
all
select
id
,
name
from
test
where
id='1003'
select
id
,
name
from
test
where
id
in('1001','1005','1003');
如果你想按顺序的话
这样就可以
select
id
,
name
from
test
where
id='1001'
union
all
select
id
,
name
from
test
where
id='1005'
union
all
select
id
,
name
from
test
where
id='1003'
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select id , name from [test] where id=(1001,1005,1003)
按说id不应该是字符型
按说id不应该是字符型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询