簡體   English   中英

PHP:MY​​SQLI-從同一行獲取數據

[英]PHP: MYSQLI - Get data from same row

我已經接受了相同的數據,但這里僅介紹了一個

現在我想從最后一行獲取text

$sql_query = $connection->query("SELECT DISTINCT `sent_by`, `sent_to` FROM `chat` WHERE `sent_by` = '1' OR `sent_to` = '1'"); 
if($sql_query->num_rows > 0) {
    while ($fetch_data = $sql_query->fetch_array(MYSQLI_ASSOC)) {
        if($fetch_data["sent_by"] == 1) {
            echo $fetch_data["sent_to"]. " TEXT: ". $fetch_data["text"].  </br>";
        } else {
            echo $fetch_data["sent_by"]. " TEXT: ". $fetch_data["text"].  </br>";
        }
    }
}

數據庫結構:

在這里檢查圖像

對不起,我的英語不好

更新

如果您將字段id作為自動增量字段,則可以使用此SQL查詢獲取最后一行:

SELECT DISTINCT `sent_by`, `sent_to`, `id`, `text` FROM `chat` WHERE `sent_by` = '1' OR `sent_to` = '1' ORDER BY `id` DESC LIMIT 1

所以改變這個:

$sql_query = $connection->query("SELECT DISTINCT `sent_by`, `sent_to` FROM `chat` WHERE `sent_by` = '1' OR `sent_to` = '1'"); 

在此:

$sql_query = $connection->query("SELECT DISTINCT `sent_by`, `sent_to`, `id`, `text` FROM `chat` WHERE `sent_by` = '1' OR `sent_to` = '1' ORDER BY `id` DESC LIMIT 1"); 

在此新查詢中,您將按id字段的值對所有結果進行降序排序。

如果要從查詢中刪除DISTINCT ,也可以從查詢的SELECT列表中刪除id

刪除DISTINCT,並僅創建查詢

$sql_query = $connection->query("SELECT sent_by, sent_to FROM chat WHERE sent_by = '1' OR `sent_to` = '1'"); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM