我正在尝试制作简单的页面,它将从 MySQL 表返回值,但问题是,如果我想在查询中使用条件,那么它不起作用。
我的 PHP 页面:
<?php
$servername = "10.10.10.10";
$username = "username";
$password = "password";
$dbname = "GENERIC_TABLES";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT WO_NUM+1 from GENERIC_TABLES.WO_NUMBERS ORDER BY WO_NUM DESC limit 1";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "<br> WO Number ". $row["WO_NUM"]. "<br>";
}
} else {
echo "0 results";
}
$conn->close();
?>
因此,WO_NUM 列包含 1、2、3 等数字。 我想得到最后一个+1 所以如果我喜欢:
$sql = "SELECT WO_NUM from GENERIC_TABLES.WO_NUMBERS ORDER BY WO_NUM DESC limit 1";
然后它工作正常,但如果我想让它 WO_NUM + 1 那么它什么也不返回。
为什么会发生这样的情况,有什么方法可以使用 MySQL 得到我想要的东西吗? 我不想获取 WO_NUM 然后使用 PHP 使其 + 1,因为我还需要 INSERT 到表值,并且我想了解为什么它不起作用。
最佳答案
正如您所意识到的,WO_NUM+1
更改了结果数组中的列名称,因此请使用别名 WO_NUM+1 as NEW_NUM
。不过我不会为排序和限制而烦恼。考虑MAX()
:
SELECT max(WO_NUM)+1 as NEW_NUM from GENERIC_TABLES.WO_NUMBERS
关于php - MySQL 查询并输出到 PHP 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40181608/