gpt4 book ai didi

Php If语句取其他大于0的最小数

转载 作者:行者123 更新时间:2023-11-29 10:05:13 26 4
gpt4 key购买 nike

底部是我的代码。我的数据库有 8 列SKU、价格 1、价格 2、价格 3、最低价格、数量 1、数量 2、数量 3

我想在我的脚本中添加一些 if 语句来检查三个参数。如果数量>0

目前我正在导出 Price1-3 中的最低数量,但它不检查是否有任何数量超过 0。

这是我的代码:

<?php 
if (isset($_SERVER['REMOTE_ADDR'])) {
die(':)');
}

echo "Cron is running";

$hostname = 'localhost';
$username = 'user';
$password = 'pass';
$myDatabase = 'database';
/**
* Defines the name of the table where data is to be inserted
*/
$table = 'mytable';

try {
$conn = new PDO('mysql:host=localhost;dbname='.$myDatabase, $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$stmt = $conn->prepare("SELECT mytable.SKU AS SKU, LEAST(price, price2, price3) AS 'Lowest2'
FROM mytable
");


$stmt->execute();

$filelocation = 'assets/exports/';
$filename = 'export-'.date('Y-m-d H.i.s').'.csv';
$file_export = $filelocation . $filename;

$data = fopen($file_export, 'w');

$csv_fields = array();

$csv_fields[] = 'SKU';
$csv_fields[] = 'Lowest2';


fputcsv($data, $csv_fields);

while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
fputcsv($data, $row);
}

} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}

最佳答案

您可以将查询更改为:

SELECT mytable.SKU AS SKU, 
LEAST(CASE WHEN qty > 0 THEN price ELSE 99999999999 END,
CASE WHEN qty2 > 0 THEN price2 ELSE 99999999999 END,
CASE WHEN qty3 > 0 THEN price3 ELSE 99999999999 END) AS 'Lowest2'
FROM mytable

我假设所有价格都低于 99999999999...

关于Php If语句取其他大于0的最小数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52048302/

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