2013-05-16 61 views
0

好吧,所以我試圖讓它可以讓我可以用一張桌子做一個基於對話的消息系統。用戶向用戶發送消息,並且我們將他們的ID作爲sent_id,並且發送它的人是my_id。現在我的問題是,它正在顯示,但我不希望它顯示多次。我一直在使用DISTINCT,但似乎沒有工作。示例表格:基於會話的消息與PHP/MYSQL?

|--ID--|--MY_ID--|--SENT_ID--| 
    1  1   2 
    2  2   1 
    3  1   2 

如何讓它只顯示最新的?

(也$my_id已經逃跑了,不用擔心笑)

SELECT `my_id`, `sent_id`, `time_stamp` FROM `messages` WHERE `sent_id`="'.$my_id.'" || `my_id`="'.$my_id.'" 

這裏是我的表:

CREATE TABLE IF NOT EXISTS `messages` (
    `id` int(11) NOT NULL AUTO_INCREMENT, 
    `my_id` text NOT NULL, 
    `sent_id` text NOT NULL, 
    `message` text NOT NULL, 
    `file` text NOT NULL, 
    `time_stamp` text NOT NULL, 
    PRIMARY KEY (`id`) 
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ; 

回答

0

傑克,而不是100%肯定你的意思的最新一個什麼。你在談論ORDER BY DESC嗎?

SELECT `my_id`, `sent_id`, `time_stamp` 
FROM `messages` 
WHERE `sent_id`="'.$my_id.'" || `my_id`="'.$my_id.'" 
ORDER BY id DESC 
LIMIT 1 
+0

我的意思是,我希望它只選擇最新的條目。但是,謝謝你提醒我,忘記了這一點。 – Jake

+0

然後「ORDER BY ID DESC LIMIT 1」=) – medina

+0

限制之一將使它,所以我只能得到一個對話。 – Jake