我在這裏有這樣大的查詢:如何在「having」子句中使用變量而不選擇它?
select
user_contact_id as userContactId,
max(attempt_number) as attemptNumber,
max(sent_timestamp) as sentTimestamp,
source as source,
from
share_email_tracking `set`
group by
user_contact_id
having
(attemptNumber = 1 and date_sub(CURDATE(), interval 4 day) >= date(sentTimestamp))
問題是,我沒有真正感興趣attemptNumber
或sentTimestamp
。我只需要那些來計算「有」條款。我不知道這樣做的任何語法,我認爲這是一個比「擁有」更普遍的問題,所以我一直無法在它的文檔中找到它。我相信臨時變量是可能的,但據我所知,這些是會話特定的,而不是特定於查詢的,我不希望它們污染狀態。這可能嗎?
在現實生活中,我複製了sentTimestamp
幾次,所以我應該避免僅僅用它來代替它。
不,這是一個語法錯誤。這些數據在組完之後才存在,這必須在計算出哪裏之後才發生。 – djechlin
@djechlin嘗試這個更新的答案 –
工程,但然後我會複製'max(sent_timestamp)'幾次在我現實生活中的條款。 – djechlin