我的用户将选择一个初始年份,我希望 mysql 从列中选择初始年份的值(比如说 1990 年),但是如果该初始年份(1990 年)没有值,它应该选择第一个可用值(让比如说 1996 年)
在这种情况下,我应该尝试选择第一个非空值,但在我的数据库中,我对所有不可用的值都有一个“-”而不是空值。
我想我很生气尝试一个无限循环的do-while循环......
do{
$sql="SELECT `$cityb` FROM data WHERE year=$initialyear";
$result = mysql_query($sql) or die('Query failed: ' . mysql_error());
if ($result) {
while ($row = mysql_fetch_assoc($result)) {
$valuei=$row["$cityb"];
}
}
$initailyear++;
}
while($value == "-"); //till when intial value is "-" (i.e no value)
此循环应在找到非“-”值时结束。但它永远不会结束。所以必须有一个更好的选择,而不是使用这个愚蠢的循环。