php - 将两个 SQL 查询合并在一起(语法问题)

标签 php mysql sql mysqli timestampdiff

我使用 PHP 发送此查询,其中 lastConndatetime 对象。

$result = $mysqli->query("SELECT id, username, lastConn FROM users LIMIT $startIndex, 50") or die($mysqli->error);

但是,我的目标不是获取原始 lastConn 数据,而是获取 lastConnCURRENT_TIMESTAMP 之间的时间差。我写了这个查询来完成这项工作:

SELECT TIMESTAMPDIFF(MINUTE,lastConn,CURRENT_TIMESTAMP) AS 'duration' FROM users;

我现在尝试将这两个查询合并在一起以获得第一个查询中的时间差,但我似乎找不到正确的语法。

以下是我使用 PHP 执行查询后检索数据的方式:

while($row = $result->fetch_assoc()){
    echo $row['id'];
    echo $row['username'];
    echo $row['lastConn']; //should echo the time difference instead of the raw lastConn value
}

如何在第一个查询中直接获取 lastConn 和 CURRENT_TIMESTAMP 之间的时间差,而不必使用第二个查询?

最佳答案

您可能只需将第二个查询的部分添加到第一个查询中,如下所示。您已经完成了所有工作,只需要最后一步!

$mysqli->query("SELECT id, username, lastConn, TIMESTAMPDIFF(MINUTE,lastConn,CURRENT_TIMESTAMP) AS 'duration' FROM users LIMIT $startIndex, 50") 

希望这有帮助。

关于php - 将两个 SQL 查询合并在一起(语法问题),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46334090/

相关文章:

mysql - tomcat jdbc连接池中缺少连接

sql - 在大表查询中获取计数匹配非常慢

sql - 更新声明?

sql - 如何在 MySQL 中表示树及其内容?

php - PHP GAE 上的 Amazon S3 无法使用 curl 扩展

php - 为什么循环不能均匀缩放?

mysql - 我安装了 MariaDB,它搞砸了 Mysql,我也无法卸载

sql - 如何识别 SQL Server 中依赖关系已损坏的 View ?

php - 如何显示受 http 身份验证保护的图像

php - Eloquent-oauth-捕获PDO异常