首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SQL select on condition

SQL select on condition
EN

Stack Overflow用户
提问于 2011-01-21 05:02:11
回答 7查看 3.6K关注 0票数 1

我有一个类似下面的表格,

代码语言:javascript
运行
复制
ID | Amt
-------
1  | $30
2  | $2
3  | $50

我想根据ID在数量上做一个选择,问题是ID=1不能保证在那里。因此,我想检查ID=1是否存在,然后选择与ID=1对应的数量,否则我想选择ID=2所在的数量。

所以像这样,

代码语言:javascript
运行
复制
Select (If ID= 1 then amt else amt(for ID2) from Table 

如何实现这个Sql select语句?

谢谢。。

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2011-01-21 05:06:44

如果1和2不在那里怎么办?如果它总是跳到下一个id,你应该选择其中的第一个按id排序的项目。

代码语言:javascript
运行
复制
select top 1 amt from table order by id;  

这方面的语法可能有点偏差...我目前正在dbs之间跳转...

票数 2
EN

Stack Overflow用户

发布于 2011-01-21 05:08:11

基于你的问题,也许有更好的方法...在不知道更多的情况下,这是我的答案:

MSSQL:

代码语言:javascript
运行
复制
select top 1 * from myTable where ID >= 1 order by ID

MySQL:

代码语言:javascript
运行
复制
select * from myTable where ID >= 1 order by ID limit 1
票数 1
EN

Stack Overflow用户

发布于 2011-01-21 05:07:37

select Amt from theTable where ID in (select min(ID) from theTable where (ID < 3) )

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4752543

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档