1
返回數據考慮此UNION兩個(或更多)的查詢:需要像UNION的查詢,但在第二的相應列的別名和第n個查詢,而不是所述第一查詢的列/別名
SELECT activity AS activity1, completion AS status1, date_end AS date1
FROM activities
WHERE (
matter LIKE '%JR161167'
AND activity LIKE '1.1 %'
AND DATEDIFF(CURDATE() , date_end) <120
)
UNION
SELECT activity AS activity2, completion AS status2, date_end AS date2
FROM activities
WHERE (
matter LIKE '%JR161167'
AND activity LIKE '1.2 %'
AND DATEDIFF(CURDATE() , date_end) <120
)
活性列將包含一個可變字符串值,但該字符串將可靠地與1.1
或1.2
或1.3
一起前置至1.9
。
問題欄也是一個字符串,但會可靠地追加一個類似於JR161167
的帳號。
我想查詢已經從內部過去的120天(這就是DATEFIFF
部分)DATE_END所有記錄,符合指定帳號(JR161167),但在活動場中包含的任何和所有子「1 ñ「。
使用UNION可從單個表「activities」中返回正確的數據,但似乎沒有辦法在第一個查詢的列或別名下標題結果集。相反,我想是這樣的:
activity1 status1 date1 activity2 status2 date2
--------------------------------------------------------------------------------
1.1 Step 1 begins... Incomplete 2017-4-16 1.2 Step 2 begins... Incomplete 2017-4-30
相反,我的查詢棧的所有結果,不管是否含有1.1,1.2,1.3,等等,一個別名列標題,activity1
下。與日期和完成字段數據相同的東西,它並不會很好地分類到相應的日期1,日期2等或狀態1,狀態2等。
我最近讀了一個看起來像這樣的例子,它貌似我要實現的邏輯,我不知道是否有人能理解其意圖,並幫助我制定正確的查詢:
SELECT date_end
IF(WHERE description LIKE '1.1 %') AS date1,
IF(WHERE description LIKE '1.2 %') AS date2`
FROM activities
很不錯的!加入,而不是聯盟。這是我的項目的關鍵部分。這絕對有用。 – TARKUS
@TARKUS歡迎您,我已經添加了第二種方式來執行查詢,加入後就像您應該使用它們一樣;) – Blag
您的第二種方式更加易於管理,因爲我必須將JOINS X 9(步驟1.1 - 1.9),並循環數千個'事項'或賬號。再次,查詢正在工作。謝謝! – TARKUS