0
選擇行我有以下在case語句
YEAR_WW
2016-23
2016-24
2016-25
2016-26
2016-27
2016-28
2016-29
2016-30
2016-31
2016-32
2016-33
2016-34
2016-35
表a
我有,從表中的數據拉到定義的另一個表中的case語句。
SELECT Family,Value,YEAR_WW
,weekly_qty = CASE WHEN YEAR_WW = '2016-23' THEN week1
WHEN YEAR_WW = '2016-24' THEN week2
WHEN YEAR_WW = '2016-25' THEN week3
WHEN YEAR_WW = '2016-26' THEN week4
WHEN YEAR_WW = '2016-27' THEN week5
WHEN YEAR_WW = '2016-28' THEN week6
WHEN YEAR_WW = '2016-29' THEN week7
WHEN YEAR_WW = '2016-30' THEN week8
WHEN YEAR_WW = '2016-31' THEN week9
WHEN YEAR_WW = '2016-32' THEN week10
WHEN YEAR_WW = '2016-33' THEN week11
WHEN YEAR_WW = '2016-34' THEN week12
ELSE week13 END
FROM sample_table
而不是硬的情況下聲明編碼表a
值,有沒有指定的case語句中的行數的方法嗎?即:
WHEN YEAR_WW = [first_row] THEN week1
WHEN YEAR_WW = [second row] THEN week2...
你使用MySQL?代碼看起來不像MySQL。另外,「week1」,「week2」等等是什麼。這些列是? –
我不認爲有像你問的東西。儘管你可以用一種有點冒險的方式,將破折號後面的子字符串轉換爲整數,然後從中減去22來獲得你所描述的星期數。 – rgoliveira
你的意思是寫first_row是什麼意思?如果您不會在查詢中指定YEAR_WW中的數據,則可以在結果中插入任何星期*。 – AstraSerg