首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sql中select语句内的IF else语句

问sql中select语句内的IF else语句
EN

Stack Overflow用户
提问于 2014-09-10 14:53:26
回答 2查看 128关注 0票数 0

如何使用mysql将if else语句插入到select语句中?请帮帮我。我是新来的..。我尝试过使用分隔符,但它们有错误..例如,这条语句:

代码语言:javascript
复制
SELECT c_id
  FROM customer
 WHERE city = 'AZ';

SELECT order_no,
       o_status 
  FROM order_status,
       customer
 WHERE order_status.c_id = customer.c_id;

UPDATE order_status 
   SET item_total=0
 WHERE o_status='waiting';
EN

回答 2

Stack Overflow用户

发布于 2014-09-10 15:04:39

我不确定我是否正确地回答了您的问题,但是下面的方法不应该起作用吗?

代码语言:javascript
复制
    UPDATE order_status 
       SET item_total=0
      FROM order_status os
INNER JOIN customer c
        ON c.c_id = os.c_id
     WHERE os.o_status='waiting' AND c.city = 'AZ'
票数 1
EN

Stack Overflow用户

发布于 2014-09-10 14:58:31

代码语言:javascript
复制
IF(expr1,expr2,expr3)

如果expr1为真(expr1 <> 0和expr1 <> NULL),则IF()返回expr2;否则返回expr3。IF()返回一个数值或字符串值,具体取决于使用它的上下文。

代码语言:javascript
复制
mysql> SELECT IF(1>2,2,3);
        -> 3
mysql> SELECT IF(1<2,'yes','no');
        -> 'yes'
mysql> SELECT IF(STRCMP('test','test1'),'no','yes');
        -> 'no'

如果expr2或expr3中只有一个显式为NULL,则IF()函数的结果类型为非空表达式的类型。

IF()的默认返回类型(在存储到临时表中时可能很重要)的计算方法如下。表达式返回值

代码语言:javascript
复制
expr2 or expr3 returns a string string
expr2 or expr3 returns a floating-point value   floating-point
expr2 or expr3 returns an integer   integer

如果expr2和expr3都是字符串,则如果其中一个字符串区分大小写,则结果区分大小写。

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

https://stackoverflow.com/questions/25759057

复制
相关文章

相似问题

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