gpt4 book ai didi

php - 如何在函数选择中使用IF和ELSE?

转载 作者:行者123 更新时间:2023-11-29 21:53:31 25 4
gpt4 key购买 nike

以下代码将根据公历计算年龄:我有两行 sql 代码,我将使用 IF 和 ELSE 将其用于以下代码中

This is what I want:

      function select($idPatient) 
{
if ( $CURRENT_DATE > "1600")
{
$sql .= "FLOOR((TO_DAYS(GREATEST(IF(decease_date='0000-00-00',CURRENT_DATE,decease_date),IFNULL(decease_date,CURRENT_DATE))) - TO_DAYS(birth_date)) / 365.25) AS age";
}
else
{
$sql .= "FLOOR((TO_DAYS(GREATEST(IF(decease_date='0000-00-00',CURRENT_DATE,decease_date),IFNULL(decease_date,CURRENT_DATE))) - TO_DAYS(birth_date)) / 365.25) - 621 AS age";
}
return ($this->exec($sql) ? $this->numRows() : false);
}

Q: In above code, IF is working well but ELSE doesn't work

更多信息:没有必要使用 current_date,任何可以用来解决这个问题的东西。如果我们输入任何名称,它也会起作用!!!!只是因为当前日期是 2015 年,我用它作为示例

enter image description here

谢谢

最佳答案

我将把你所拥有的东西粉碎在一起,放入一个 mysql 中,否则的话:

IF(YEAR(CURRENT_DATE)>1600, 

FLOOR((TO_DAYS(GREATEST(IF(decease_date='0000-00-00',CURRENT_DATE,decease_date),
IFNULL(decease_date,CURRENT_DATE))) - TO_DAYS(birth_date)) / 365),

(FLOOR((TO_DAYS(GREATEST(IF(decease_date='0000-00-00',CURRENT_DATE,decease_date),
IFNULL(decease_date,CURRENT_DATE))) - TO_DAYS(birth_date)) / 365.25) - 621)

) as age

所以如果条件成立,中间的sql,else下面的sql = 列年龄。

关于php - 如何在函数选择中使用IF和ELSE?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33398761/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com