我正在運行一個比賽,列出學校教師觀看的所有視頻,但是如果他們觀看的視頻之一是「幹」視頻,我希望他們的名字被列出兩次,以便他們可以放入圖紙兩次。
基本上我有一個case when
子句,所以如果一個視頻在標題中包含單詞'stem',我表格的最後一列就會說'Stem'else'0'。在最後一欄說乾的情況下,我想重複整行。我希望這是有道理的。這是我到目前爲止;試圖添加一個重複的行
SELECT *
FROM (
SELECT District,
SchoolName,
PersonnelId,
Name,
EmailAddress,
BeganViewingDate,
CASE WHEN SecondsCompleted >= SeventyFivePercent
THEN ContentName
ELSE '0' END as 'ContentName',
SegmentLengthInSeconds,
SecondsCompleted,
CASE WHEN contentname LIKE '%Stem%'
THEN 'Stem'
ELSE '0' END As 'Stem'
FROM (
SELECT vp.PersonnelId,
cp.EmailAddress,
CONCAT(cp.LastName, ', ', cp.FirstName) as Name,
vp.BeganViewingDate,
vp.SecondsCompleted,
c.ContentId,
c.ContentName,
c.SegmentLengthInSeconds,
ROUND(SegmentLengthInSeconds*0.75) as SeventyFivePercent,
cv.SchoolName,
cv.District
FROM PD360v2.ViewingProgress as vp
JOIN PD360v2.Content as c on vp.ContentId = c.ContentId
JOIN PD360v2.ClientPersonnel as cp on vp.PersonnelId = cp.PersonnelId
JOIN PD360v2.ClientView as cv on cp.ClientId = cv.Id
WHERE vp.BeganViewingDate BETWEEN '2016-02-02 08:00:00' AND '2016-02-09 07:59:00'
AND cv.NcesDistrictId IN (List Of districts here)
) as a
ORDER BY PersonnelId) as b
WHERE ContentName not like 0
ORDER BY District, SchoolName, Name;
如何使用UNION ALL列? – kiro