簡體   English   中英

在where子句中使用select

[英]Using select in where clause

我有一個名為message的表。 我只是在person_send_id和person_receive_id不同時嘗試從表中選擇消息。
我可以正確選擇person_send_id和person_receive_id。
但是,我不知道如何選擇郵件。
我正在考慮在Select中使用Select,但我不知道如何實現它或者它是否正確的方法。

SELECT DISTINCT person_send_id, person_receive_id 
FROM `message` 
WHERE person_send_id = 21 OR person_receive_id = 21 
//AND SELECT message FROM `message` when these criteria are met

消息表

message_id 
message 
person_send_id 
person_receive_id

這是我的表格數據。

在此輸入圖像描述

我想只選擇person_send_id和person_receive_id重復的第一條消息。
因此,如果我向同一個人發送10條消息,我只想抓取該消息的記錄,在本例中為“Hello”,例如

您只需將message添加到當前選擇中即可。

SELECT DISTINCT person_send_id, person_receive_id, message 
FROM `message` 
WHERE person_send_id = 21 OR person_receive_id = 21;

而且我認為你會想要最新的,因為它將作為一個標題。

添加ORDER BY message_id DESC LIMIT 1

例如

 SELECT DISTINCT person_send_id, person_receive_id, message 
 FROM `message` 
 WHERE person_send_id = 21 OR person_receive_id = 21 
 ORDER BY message_id DESC LIMIT 1;

暫無
暫無

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

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