html – 我需要拆分一系列’varchar’响应,以便在创建DataTable时它显示为新行?

我需要做的是将响应从存储在数据库中的在线调查表中获取,并将其显示为网站上的表格,到目前为止我已经完成了,它看起来像这样:

||User Id |Group   | Q1                 | Q2            | Q3    | Q4   |...
    | 1234    |no group| 30/06/14,25/08/14,| gs,gm,cl&h   | either|s1    |...
    |         |        | 27/07/14           |               |       |      |...

我现在需要以新的方式显示现有数据.需要拆分单元中的信息,以便在单元中存在多个信息位的情况下,创建新行.不确定描述它的最佳方式,但以上面的例子为例,我需要它看起来像这样:

||User Id |Group   | Q1      | Q2   | Q3    | Q4   |...
| 1234    |no group| 30/06/14| gs   | either|s1    |...
| 1234    |no group| 25/08/14| gm   | either|s1    |...
| 1234    |no group| 27/07/14| cl&h | either|s1    |...

基本上,每行使用相同的UserID,Group等,但每个Q1,Q2等不同.

这是我到目前为止用于实现顶级示例的代码.

'
' sql to get data
    sql = "select * from TABLE where (datestamp > '" & startDate & "') AND (datestamp < '" & endDate & "') ORDER BY datestamp"

Set fieldTitles = CreateObject("Scripting.Dictionary")
fieldTitles.Add "userID","User ID"
fieldTitles.Add "grp","Group"
fieldTitles.Add "q1","Q1"
fieldTitles.Add "q2","Q2"
fieldTitles.Add "q3","Q3"
fieldTitles.Add "q4","Q4"
fieldTitles.Add "q5","Q5"
fieldTitles.Add "q6","Q6"
fieldTitles.Add "q7","Q7"
fieldTitles.Add "q8","Q8"
fieldTitles.Add "q9","Q9"
fieldTitles.Add "qOrder1","qOrder1"
fieldTitles.Add "qOrder2","qOrder2"
fieldTitles.Add "qOrder3","qOrder3"
fieldTitles.Add "qOrder4","qOrder4"
fieldTitles.Add "datestamp","Date Stamp"
fieldTitles.Add "Qid","Qid"
fieldTitles.add "y5grp","Year 5 Group"

' get the table html
dataString = createDataTablesql(fieldTitles,sql,"")

我一直试图想出一种方法,使用’Left(string,length)’来删除开始文本并复制行,但如果字符串长度不同(如Q2),我不能一直这样做.任何人都能指出我正确的方向吗?

解决方法

纯粹是为了向您展示方法,这可以满足您的需求,不确定我是否同意以正确的方式存储数据,但希望这有助于

SELECT
disTINCT ROWID,trim(
regexp_substr(Q2,'[^,]+',1,LEVEL)
) decoded
FROM
(
select
'1234' as USER_ID,'NO GROUP' as "GROUP",'30/06/14,27/07/14' as Q1,'qs,cl&h' as Q2,'either' as Q3,'s1' as Q4
from
dual
) X CONNECT BY trim(
regexp_substr(Q2,LEVEL)
) IS NOT NULL
ORDER BY
ROWID;

相关文章

vue阻止冒泡事件 阻止点击事件的执行 &lt;div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些