我想创建一个表,该表将从最近添加的mysql数据库中输出数据。
示例:
+-----+---------+-----------+---------------+-------------+
| id | item_id | item_name | borrowed_date | expiry_date |
+-----+---------+-----------+---------------+-------------+
| B01 | N01 | book | 12/05/2017 | 10/06/2017 |
+-----+---------+-----------+---------------+-------------+
我尝试使用ORDER BY,但是它不会根据新添加的行输出。
<?php
include"connection.php"; //contain $conn
$query = "SELECT * FROM `database` ORDER BY item_id ASC ;";
$result = mysqli_query($conn,$query);
?>
输出不是根据新添加的数据
答案 0 :(得分:0)
将您的id列设置为自动递增 为您的表命名,而不是数据库。
然后使用:
SELECT * FROM `yourtable` ORDER BY `id` DESC LIMIT 0,1;
答案 1 :(得分:-1)
我建议包括设置为AUTO_INCREMENT的一列(如主键)。这样,您可以按ID降序(DESC)排序以获得最新条目。
类似这样的东西:
CREATE TABLE `database` (
id MEDIUMINT NOT NULL AUTO_INCREMENT,
[other columns here]
PRIMARY KEY (id)
);
然后:
SELECT * FROM `database` ORDER BY `id` DESC LIMIT 0,1;
偶然地,我不确定您的表是否真的命名为“数据库”。如果是这样,我建议不要使用reserved word。由于您使用的是反引号,因此它可以工作,但是对于various reasons还是要更改它可能是一个好主意。