php - SQL 选择最大值(Id)

标签 php python mysql select max

我尝试绘制 SQL 数据库最后 7 个条目的图表。 所以我尝试选择最大(或最后输入的)身份证号码,但它不起作用。

我的 table :

Id   | id_time | temp   | RH
2700 | 2706    | 24.187 | 63.0999984741211
2701 | 2707    | 24.25  | 63
2702 | 2708    | 26.562 | 99.9000015258789
2703 | 2709    | 25     | 50.456
2704 | 2710    | 28.2   | 64.48
2705 | 2711    | 21.541 | 78.45876
2706 | 2712    | 18.567 | 55.787455465
2707 | 2713    | 23.25  | 58.54564
2708 | 2714    | 26.5   | 49.9000015258789
2709 | 2715    | 25     | 50.456
2710 | 2716    | 28.2   | 64.48
2711 | 2717    | 21.541 | 78.45876
2712 | 2718    | 18.567 | 55.787455465
2713 | 2719    | 23.25  | 58.54564
2714 | 2720    | 26.5   | 49.9000015258789

我用来制作表格的 python 代码:

with con:
cur = con.cursor()

cur.execute("DROP TABLE IF EXISTS tijd")
cur.execute("CREATE TABLE tijd(Id INT PRIMARY KEY AUTO_INCREMENT, \
             jaar VARCHAR(25), \
             maand VARCHAR(25), \
             dag VARCHAR(25), \
             uur VARCHAR(25), \
             minuut VARCHAR(25))")
cur.execute("DROP TABLE IF EXISTS data")
cur.execute("CREATE TABLE data(Id INT PRIMARY KEY AUTO_INCREMENT, \
             id_tijd VARCHAR(25), \
             temp VARCHAR(25), \
             RH VARCHAR(25))")

我用来从数据库中选择数据的 php 代码:

        <?php
       $dbhost = 'localhost';
       $dbuser = 'testuser1';
       $dbpass = 'loes';

       $conn1 = mysql_connect($dbhost, $dbuser, $dbpass);

       if(! $conn1 ) {
          die('Could not connect: ' . mysql_error());
       }


       $sql1 ='SELECT MAX(Id) FROM data';
       mysql_select_db('huygendb');
       $retval1 = mysql_query( $sql1, $conn1 );

       if(! $retval1 ) {
          die('Could not get data: ' . mysql_error());
       }

       $max1 = mysql_query($sql1) or die ("no query");
       echo "{$max1} <br>";
       if ($max1-7 > 0){
        $max = $max1 -7;}
       else{
        $max = 0;}
       echo "{$max} <br>";

       mysql_close($conn1);
       ?>

代码的结果是:

Resource id #3
0

可能某处仍然有 ID = 3 的记录,所以我猜我的 ID 是字符串(因为“3”高于“2714”),但我真的认为我让它们成为整数对吗? 我怎样才能修复 php 代码来做我想做的事?

最佳答案

首先检查 php 文档 here . mysql_query 返回资源而不是对象或数组。要检查数据库中的结果集,您需要像这样循环遍历它

while ($row = mysql_fetch_assoc($max1)) {
echo $row['Id'];
}

关于php - SQL 选择最大值(Id),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37612043/

相关文章:

javascript - 向 iframe 添加新 header

python - Keras:如何计算多标签分类的准确度?

python - 解析字符串以查找并删除 float

jquery - 我想从 onkeyup 事件的数据库中检索信息,并使用 jquery 将其显示在文本框中

PHP:如何检查总数。网址中的参数?

php - 当我使用 jqueryui 自动完成功能时,为什么我的网站会发出 "xssvuln"警报?

php - jquery选择问题

python - 在 Visual Studio Code 容器中安装 Python 库

mysql - Dapper 是否支持在单个查询中插入多行?

PHP MySQL 数据库记录更新错误并包含内爆值