Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 在SQL中查找天数属于表的给定类别的类别_Mysql_Sql Server 2005 - Fatal编程技术网

Mysql 在SQL中查找天数属于表的给定类别的类别

Mysql 在SQL中查找天数属于表的给定类别的类别,mysql,sql-server-2005,Mysql,Sql Server 2005,我有一个表,列为,值为 供应类型---从天起---今天 goodLoan-----1-----90 不合格------91------180 多福--------181--------365 坏--------365--------365+ 在下面的例子中,我可能有一个变量,它可能不同,我正在从代码中管理它……但是假设我想找到从天到天之间正好有200个变量,那么我就得到了正确的准备金类型。因此,请大家在这方面帮助我这在SQL Server中是否有效: select top 1 Provision

我有一个表,列为,值为

供应类型---从天起---今天

goodLoan-----1-----90 不合格------91------180 多福--------181--------365 坏--------365--------365+
在下面的例子中,我可能有一个变量,它可能不同,我正在从代码中管理它……但是假设我想找到从天到天之间正好有200个变量,那么我就得到了正确的准备金类型。因此,请大家在这方面帮助我

这在SQL Server中是否有效:

select top 1 ProvisionType
from table
where FromDays < 200
order by FromDays desc
对于MySQL:

select ProvisionType
from table
where FromDays < 200
order by FromDays desc
limit 1

我不知道你为什么需要FromDays和ToDays。这似乎是在要求重叠和间隙。如果您只有FromDays,那么您可以保证没有间隔或重叠,并且不必做聪明的事情来管理最高限制,即365天以上。

如果您使用的是SQL Server,那么这应该是可行的。不确定MySql是否在

SELECT ProvisionType 
FROM myTable
WHERE (myVariable BETWEEN FromDays AND ToDays)
SELECT ProvisionType
FROM myTable
WHERE myVariable >= FromDays 
AND myVariable <= ToDays
它也可以写在没有中间

SELECT ProvisionType 
FROM myTable
WHERE (myVariable BETWEEN FromDays AND ToDays)
SELECT ProvisionType
FROM myTable
WHERE myVariable >= FromDays 
AND myVariable <= ToDays
要使其起作用,您应该用实际数字替换最后一条规定中的365+,否则ToDays字段将需要是varchar字段,而不是数字字段。此外,如果提供的值为365,它会属于最后一个类别还是之前的类别?其他类别有一个明显的分界点,但最后一个类别重叠