我有兩個數據表,我需要在一個SQL Server查詢中連接在一起 - 一個包含事務信息,另一個包含已針對事務回答的市場營銷問題。旋轉未定義的文本列
這裏是一個精簡的例子:
-------------------------------------------
| Transaction Info |
|-------------------------------------------|
|Transaction_ID |Date |Customer_ID|
|1 |2016-01-01 |2614 |
|2 |2016-04-16 |3981 |
|3 |2016-06-25 |2113 |
-------------------------------------------
------------------------------------------------------------------
| Marketing Questions |
|------------------------------------------------------------------|
|Transaction_ID |Question |Answer |
|1 |How would you rate our service? |Excellent |
|2 |Would you recommend us? |Yes |
|2 |Where did you hear about us? |Friend |
|1 |Any other comments? |None |
|3 |How would you rate our service? |Average |
|2 |Any other comments? |None |
------------------------------------------------------------------
這裏就是我堅持:我需要轉動的營銷表中的問題,成爲列名在最後的連接表,在單元格的值是答案。
問題是,問題是從一個非常大的集合隨機化的,所以我無法在查詢中定義它們。它需要動態捕獲表中返回的所有問題,將它們生成爲列,然後在單元格中填充答案。
營銷表本身就是日期範圍查詢的結果,因此包含的問題並不總是相同的。這就是爲什麼我不能提前將它們定義在PIVOT中的原因。
我真的不知道從哪裏開始,所以任何幫助都非常感謝!
哎喲...它看起來像您的MarketingQuestions嚴重需要正常化。一遍又一遍地重複提問並不是最好的設計。話雖如此,你試圖完成的事情聽起來像是一個動態的關鍵。這裏已經有數百次和數百次的問答。 –
我最近使用遞歸類做了一些事情。我需要在計算機上寫下代碼和測試,但是請稍等片刻 – Merenix
如果應用程序最終是10%DBMS代碼和90%支持代碼,旨在解決DBMS功能中的缺陷,然後(a)選擇不同的DBMS或(b)首先不使用DBMS。 DBMS旨在使任務更簡單,而不是更復雜。如果不是,那麼顯然不合適,並且不適合當前的任務。 –