Php SQL选择最大值(Id)
我尝试将SQL数据库的最后7个条目绘制成一个图表。 因此,我尝试选择最大(或上次输入的)id号,但它不起作用 我的桌子:Php SQL选择最大值(Id),php,python,mysql,select,max,Php,Python,Mysql,Select,Max,我尝试将SQL数据库的最后7个条目绘制成一个图表。 因此,我尝试选择最大(或上次输入的)id号,但它不起作用 我的桌子: 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
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);
?>
可能还有一个Id=3的记录,所以我猜我的Id是字符串(因为'3'比'2714'高),但我真的认为我把它们变成了整数,对吗?
如何修复php代码以完成我想要的任务?我假设您正在查找sql查询,下面的查询将按列名降序排列,并返回7行
SELECT * FROM table_name ORDER BY column_name DESC LIMIT 7;
我假设您正在寻找sql查询,下面的查询将按列名降序排列,并返回7行
SELECT * FROM table_name ORDER BY column_name DESC LIMIT 7;
mysql_query();返回资源,而不是结果集。您需要从中获取数据:
$res = mysql_query($sql1) or die ("no query");
$max1 = mysql_fetch_array($res);
var_dump($max1);
然后:不要使用mysql_*函数。他们被弃用了 mysql_query();返回资源,而不是结果集。您需要从中获取数据:
$res = mysql_query($sql1) or die ("no query");
$max1 = mysql_fetch_array($res);
var_dump($max1);
然后:不要使用mysql_*函数。他们被弃用了 首先检查php文档。mysql\u查询返回一个资源,而不是一个对象或数组。要检查数据库中的结果集,需要像
while ($row = mysql_fetch_assoc($max1)) {
echo $row['Id'];
}
首先检查php文档。mysql\u查询返回一个资源,而不是一个对象或数组。要检查数据库中的结果集,需要像
while ($row = mysql_fetch_assoc($max1)) {
echo $row['Id'];
}
不要使用PHP的mysql\uAPI。为什么?因为人们发现它发出的信号会缓慢地通过肚脐吸引你的思维,从而使你以前可能不得不使用搜索引擎的任何能力无效。不要使用PHP的mysql\uAPI。为什么?因为人们发现它会发出信号,通过你的肚脐缓慢地吸出你的思想,从而消除你以前可能不得不使用搜索引擎的任何能力。