Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 这就是我必须改变主意的原因。@waseem确实在上面提到了“虽然我有两个问题,每个问题有两个答案”,我想你真的需要检查你的数据,也许你在表格中有两次问题类型,或者两次调查,这会导致所有行重复。试着在SQL GUI中独立地注释每个表及其列,看看哪一个表的删除_Mysql_Coldfusion - Fatal编程技术网

Mysql 这就是我必须改变主意的原因。@waseem确实在上面提到了“虽然我有两个问题,每个问题有两个答案”,我想你真的需要检查你的数据,也许你在表格中有两次问题类型,或者两次调查,这会导致所有行重复。试着在SQL GUI中独立地注释每个表及其列,看看哪一个表的删除

Mysql 这就是我必须改变主意的原因。@waseem确实在上面提到了“虽然我有两个问题,每个问题有两个答案”,我想你真的需要检查你的数据,也许你在表格中有两次问题类型,或者两次调查,这会导致所有行重复。试着在SQL GUI中独立地注释每个表及其列,看看哪一个表的删除,mysql,coldfusion,Mysql,Coldfusion,这就是我必须改变主意的原因。@waseem确实在上面提到了“虽然我有两个问题,每个问题有两个答案”,我想你真的需要检查你的数据,也许你在表格中有两次问题类型,或者两次调查,这会导致所有行重复。试着在SQL GUI中独立地注释每个表及其列,看看哪一个表的删除减少了重复项。@Steve-我读到的有点不同。我认为这意味着每个相关答案的问题id都会重复一次,这是由于与答案的连接。因此它们不是真正的复制品。这正是你加入时应该发生的事情。只要他是按问题ID排序的,分组的输出就应该给他想要的输出。@wasee


这就是我必须改变主意的原因。@waseem确实在上面提到了“虽然我有两个问题,每个问题有两个答案”,我想你真的需要检查你的数据,也许你在表格中有两次问题类型,或者两次调查,这会导致所有行重复。试着在SQL GUI中独立地注释每个表及其列,看看哪一个表的删除减少了重复项。@Steve-我读到的有点不同。我认为这意味着每个相关答案的问题id都会重复一次,这是由于与答案的连接。因此它们不是真正的复制品。这正是你加入时应该发生的事情。只要他是按问题ID排序的,分组的输出就应该给他想要的输出。@waseem-有不同的方法来分割它,但有一种方法要看。未经测试,因此要注意拼写错误;-)给那只猫剥皮有很多方法。另一个选项是@Brad在评论中建议的:运行两个查询。一个根据问题ID分页,然后第二个查询获取当前页面的问答。与列表相比,我更喜欢这个想法(或类似的想法),因为这样就不会有“分隔符”冲突。起初我这样做了,但仍然遇到了问题重复的问题,所以我不得不改变主意。@waseem确实在上面提到过“尽管我有两个问题,每个问题有两个答案”我认为你真的需要检查你的数据,也许你在表中有两次问题类型,或者两次调查,这会导致所有行重复。试着在SQL GUI中独立地注释每个表及其列,看看哪一个表的删除减少了重复项。@Steve-我读到的有点不同。我认为这意味着每个相关答案的问题id都会重复一次,这是由于与答案的连接。因此它们不是真正的复制品。这正是你加入时应该发生的事情。只要他是按问题ID排序的,分组的输出就应该给他想要的输出。@waseem-有不同的方法来分割它,但有一种方法要看。未经测试,因此要注意拼写错误;-)我使用了另一种方法,我将问题和答案存储在一个数组中,分别用于每个查询,我只是循环有问题ID的问题,这也很好,但我发现很难使用数组进行分页,这就是我改变主意的原因。实际上,这是我第一次使用多个选项对表单进行分页。不管怎样,谢谢你的回复。好的,上面的内容可以很好地用于分页。虽然我不太喜欢列表/数组,但没有明显的理由不起作用。因此,如果你有问题,这强烈表明你正在做一些我们在你这方面没有意识到的事情。。。我们必须看到实际的代码和输出,才能理解为什么它对您不起作用。仅供参考:#CurrentRow#在分组输出时表现不同。你需要它做什么?假设我有两个问题和两个答案,我希望每个问题都显示在一页上,当我想在下一页上看下一个问题时,它在第一页上显示相同的第一个问题和第二个答案,它在所有答案上都显示得很好,在另一个问题上也一样,这是我的主要问题。我对CurrentRow没有问题,我只是想说清楚。你在使用上面的代码吗?因为我不明白这是怎么发生的。如果是这样的话,您几乎可以肯定在代码中做了一些不同的事情。不幸的是,在看不到实际代码和结果的情况下,不可能说出差异是什么。请随意发布,但是你可能应该打开一个单独的线程,因为这现在是一个不同的问题。让我们使用另一种方法,我将问题和答案存储在一个数组中,在每个单独的查询中,我只是循环这个问题,这个问题有问题ID。这也很好,但我发现使用数组很难进行分页我改变了主意。实际上,这是我第一次使用多个选项对表单进行分页。不管怎样,谢谢你的回复。好的,上面的内容可以很好地用于分页。虽然我不太喜欢列表/数组,但没有明显的理由不起作用。因此,如果你有问题,这强烈表明你正在做一些我们在你这方面没有意识到的事情。。。我们必须看到实际的代码和输出,才能理解为什么它对您不起作用。仅供参考:#CurrentRow#在分组输出时表现不同。你需要它做什么?假设我有两个问题和两个答案,我希望每个问题都显示在一页上,当我想在下一页上看下一个问题时,它在第一页上显示相同的第一个问题和第二个答案,它在所有答案上都显示得很好,在另一个问题上也一样,这是我的主要问题。我对CurrentRow没有问题,我只是想说清楚。你在使用上面的代码吗?因为我不明白这是怎么发生的。如果是这样的话,您几乎可以肯定在代码中做了一些不同的事情。不幸的是,在看不到实际代码和结果的情况下,不可能说出差异是什么。请随意发布,但您可能应该打开一个单独的线程-因为它现在是一个不同的问题
<cfquery name="questions">
    SELECT
       questions.id as questionid,
       questions.question as question,
       questions.rank as rank,
       questions.isrequired as isrequired,
       questiontypes.id AS questiontypeid,
       questiontypes.name as questiontype,
       questiontypes.template as template,
       questions.survey_id as survey_id,
       surveys.name as surveyname,
       surveys.questionsperpage as questionsperpage,
       surveys.thankyoumsg as thankyoumsg,
       answers.id as answerid,
       answers.answer as answer
    FROM
       questions
   LEFT JOIN answers ON answers.question_id = questions.id
   INNER JOIN questiontypes ON questions.questiontype_id = questiontypes.id
   INNER JOIN surveys ON questions.survey_id = surveys.id
   WHERE
   questions.survey_id = <cfqueryparam cfsqltype="cf_sql_integer" value="#arguments.surveyid#">  
</cfquery>
SELECT
       questions.id as questionid,
       questions.question as question,
       questions.rank as rank,
       questions.isrequired as isrequired,
       questiontypes.id AS questiontypeid,
       questiontypes.name as questiontype,
       questiontypes.template as template,
       questions.survey_id as survey_id,
       surveys.name as surveyname,
       surveys.questionsperpage as questionsperpage,
       surveys.thankyoumsg as thankyoumsg,
       group_concat(answers.id) as answerids,
       group_concat(answers.answer) as answers
    FROM
       questions
   LEFT JOIN answers ON answers.question_id = questions.id
   INNER JOIN questiontypes ON questions.questiontype_id = questiontypes.id
   INNER JOIN surveys ON questions.survey_id = surveys.id
   WHERE
   questions.survey_id = <cfqueryparam cfsqltype="cf_sql_integer" value="#arguments.surveyid#">
   group by questions.id
<cfouput query="questions" group="questionID">
    #question#<br>
    <cfoutput>
    - #answer#<br>
    </cfoutput>
</cfoutput>
    <!---  For clarity these are descriptive, rather than actual, column names --->
    <cfquery name="getCurrentPageQuestions" .....>
        SELECT  QuestionID
        FROM    Questions
        WHERE   SurveyID = <cfqueryparam cfsqltype="cf_sql_integer" value="#arguments.surveyid#"> 
        ORDER BY WhateverColumnsYouWant
        LIMIT  11, 20
    </cfquery>
    <cfquery name="getAnswers" .....>
        SELECT
                q.QuestionID
                , q.Question
                , a.AnswerID
                , a.Answer
                , .....
        FROM    questions q
                    LEFT JOIN answers a ON a.questionID = q.questionID
                    INNER JOIN questiontypes qt ON qt.questionTypeID = q.questionTypeID
                    INNER JOIN surveys s ON s.surveyID = q.surveyID
        WHERE  q.questionID IN 
               (
                   <cfqueryparam value="#valueList(getCurrentPageQuestions.questionID)#" 
                        list="true" 
                        cfsqltype="cf_sql_integer">
               )
        ORDER BY q.questionID
    </cfquery>
    <cfouput query="getAnswers" group="questionID">
         <!--- display question once --->
        #question#<br>

       <cfoutput> 
            <!--- display all answers --->
             - #answer#<br>
        </cfoutput>
    </cfoutput>