2017-09-21 12 views
0

PHPを使用してlastConndatetimeオブジェクトの場合、このクエリを送信しています。2つのSQLクエリをまとめて結合する(構文の問題)

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

しかし私の目標は、生lastConnデータを取得することはありませんが、lastConnCURRENT_TIMESTAMP間の時間差。私は今、最初のクエリの時間差を取得するために一緒にこれらの2つのクエリをマージしようとしているが、私は正しい構文を見つけることができないよう

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

:私は仕事をして、このクエリを書きました。第二を使用せずに、どのように私は直接私の最初のクエリでlastConnとCURRENT_TIMESTAMPとの間の時間差を取得することができ

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 
} 

:私はPHPを使用してクエリを実行した後にデータを取得していますどのようにここで

です1 ?

+1

、あなたがしようとしました: $ mysqli->クエリ( "ユーザーLIMIT $のstartIndex、50から '期間' としてID、ユーザ名、lastConn、TIMESTAMPDIFF(MINUTE、lastConn、CURRENT_TIMESTAMP)を選択") –

+0

*手のひらを顔に当てる*私はdidnの今私はそれを見ることができると思うが、私はそれを見ることが完全にはっきりしていると思う...私は私のSQLをブラッシュアップする必要があります。私はそれを受け入れることができるようにあなたの答えを投稿できますか? –

答えて

1

おそらく、次のように、2番目のクエリの部分を最初の部分に追加できます。あなたはそれがすべて働いていた、ちょうどその最後のステップが必要でした!

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

これが役に立ちます。

関連する問題