簡體   English   中英

MySQL LIMIT結果與INNER JOIN有超過2個表

[英]MySQL LIMIT results with INNER JOIN with more than 2 tables

我有一個數據庫,允許用戶擁有多個電子郵件地址。 我想查詢數據庫以獲取該客戶的所有作業實例。 每項工作都會返回兩次,每封電子郵件一次。

這是我的查詢:

SELECT customers.first_name, customers.last_name, emails.email, services.title, services.description, jobs.status, jobs.job_id 
FROM customers 

INNER JOIN emails ON customers.user_id=emails.user_id 
INNER JOIN jobs ON customers.user_id=jobs.customer_id 
INNER JOIN services ON jobs.service_id=services.service_id;

它返回這樣的東西:

數據庫

我想僅使用第一封電子郵件返回結果。 對於用戶存檔的每個電子郵件地址,不應重復該行。

如何才能做到這一點?

您可以在SQL上使用GROUP BY來獲取如下的唯一列值。

SELECT customers.first_name, customers.last_name, emails.email, services.title, services.description, jobs.status 
FROM customers 

INNER JOIN emails ON customers.user_id=emails.user_id 
INNER JOIN jobs ON customers.user_id=jobs.customer_id 
INNER JOIN services ON jobs.service_id=services.service_id;

GROUP BY jobs.job_id;

暫無
暫無

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

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