Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.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视图:查询中的count和for循环_Mysql_View_While Loop - Fatal编程技术网

mysql视图:查询中的count和for循环

mysql视图:查询中的count和for循环,mysql,view,while-loop,Mysql,View,While Loop,我正在使用mysql。需要创建一个视图,其中查询必须包含一些MIN(case-when-then-else-end)语句。 我不知道我必须写多少Case语句,因为这个值取决于与视图相关的一个表,比如表B。所以我的视图在select语句中必须有动态的Case数。 我想知道如何才能做到这一点。我认为可以通过计算表B中的行数,然后将该值设置为变量(@q),然后在select语句中使用while循环来动态创建所需的MIN(case-when-then-else-end)语句来实现。谢谢你的帮助。你想做的

我正在使用mysql。需要创建一个视图,其中查询必须包含一些
MIN(case-when-then-else-end)
语句。
我不知道我必须写多少Case语句,因为这个值取决于与视图相关的一个表,比如表B。所以我的视图在select语句中必须有动态的Case数。
我想知道如何才能做到这一点。我认为可以通过计算表B中的行数,然后将该值设置为变量(@q),然后在select语句中使用while循环来动态创建所需的MIN(case-when-then-else-end)语句来实现。谢谢你的帮助。

你想做的事做不到。您不能定义具有可变列数的视图。谢谢,有没有办法实现这一点,就像MSSQL的pivot一样?。顺便说一下,我的书架上有你的书。在MySQL中执行此操作的“正常”方法是使用
group\u concat()
将一列中的值连接在一起。不过,为了找到解决方案,您需要发布更多关于该问题的信息。(希望你觉得这本书有帮助;)好的,我的工作的背景是一个调查管理应用程序,用户可以创建自己的调查,并为他们提出的问题分配不同的权重或值。该视图旨在根据每个用户以前对问题、答案和值的定义(在表B中完成)自定义其数据报表。这样,我需要自定义视图生成,该视图生成包含动态数量的数据透视或案例语句。当我使用MSSQL服务器时,我用pivot解决了这种需求。谢谢。@datelligent。听起来像是要为特定表动态创建视图。也就是说,给定一个表
B
,用一组特定的列创建一个特定于
B
的视图。这是正确的理解吗?