Php 如何在MySQL中执行此多IF语句
我有这张桌子:Php 如何在MySQL中执行此多IF语句,php,mysql,if-statement,nested,Php,Mysql,If Statement,Nested,我有这张桌子: scanner name | maxwidth | maxlength ==================================== scanner A | 50 | 100 scanner B | 60 | 120 在我的PHP中,我有: $paperW = 70; $paperL = 55; 如何进行mysql查询,以便我的结果返回: scanner name ============ scanner B 这样做的目的是找
scanner name | maxwidth | maxlength
====================================
scanner A | 50 | 100
scanner B | 60 | 120
在我的PHP中,我有:
$paperW = 70;
$paperL = 55;
如何进行mysql查询,以便我的结果返回:
scanner name
============
scanner B
这样做的目的是找到适合纸张大小的扫描仪。虽然纸张宽度为70,长度为55,打印机B的最大宽度为60,但我们始终可以旋转纸张方向,使纸张宽度变为55,长度变为70,以适合扫描仪B
在伪代码中,检查扫描仪是否适合纸张将如下所示:
if (paperW <= maxWidth && paperL <= maxLength)
return true
else{
if (paperW > maxWidth){
if (paperW <= maxLength && paperL <= maxWidth)
return true;
else
return false;
}
else
return false;
}
if(paperW$query=
“从扫描仪中选择
WHERE(maxwidth您可以使用类似于以下内容的WHERE子句:
WHERE (paperW <= maxWidth AND paperL <= maxLength) OR
(paperL <= maxWidth AND paperW <= maxLength)
WHERE(paperW这是正确的答案(我认为xD):
Saludos;)只需在php中获取矩形区域即可
RectArea = width * length;
并在where子句中使用矩形区域
SELECT
SCANNER_NAME,
MAX_WIDTH,
MAX_LENGTH,
(MAX_WIDTH * MAX_LENGTH) PAGE_AREA
FROM Scanners
WHERE (MAX_WIDTH * MAX_LENGTH) >= RectArea ;
试试这个
select scanner_name from your_table
where ('$paperW' <= maxwidth and $paperL <= maxlength )
OR ('$paperW' <= maxlength and $paperL <= maxwidth )
从您的\u表中选择扫描仪\u名称
where(“$paperW”?您是否查看了where
语句?
SELECT
SCANNER_NAME,
MAX_WIDTH,
MAX_LENGTH,
(MAX_WIDTH * MAX_LENGTH) PAGE_AREA
FROM Scanners
WHERE (MAX_WIDTH * MAX_LENGTH) >= RectArea ;
select scanner_name from your_table
where ('$paperW' <= maxwidth and $paperL <= maxlength )
OR ('$paperW' <= maxlength and $paperL <= maxwidth )