Mysql 用于提取每个值都是单独行的表单条目的SQL查询

Mysql 用于提取每个值都是单独行的表单条目的SQL查询,mysql,sql,Mysql,Sql,我有一个用户构建表单的模型,如下所示: Form id title FormField id type name label FormEntry id form_id date FormFieldEntry id form_entry_id form_field_id value 我试图在表单上构造一个sql查询,该查询将FormField标签作为列名,FormFieldEntry作为值。实现所需的唯一方法是使用动态sql。必须通过查询

我有一个用户构建表单的模型,如下所示:

Form
  id
  title

FormField
  id
  type
  name
  label

FormEntry
  id
  form_id
  date

FormFieldEntry
  id
  form_entry_id
  form_field_id
  value

我试图在表单上构造一个sql查询,该查询将FormField标签作为列名,FormFieldEntry作为值。

实现所需的唯一方法是使用动态sql。必须通过查询列名在代码中组装SQL语句字符串并将其发送到数据库。生成的SQL语句可能类似于:

Select FFE.form_entry_id
    , Min( Case When FF.name = 'Foo' Then FFE.value End ) As `Foo`
    , Min( Case When FF.name = 'Bar' Then FFE.value End ) As `Bar`
    , ...
From FormFieldEntry As FFE
    Join FormField As FF
        On FF.id = FFE.form_field_id
Group By FFE.form_entry_id

您正在使用什么RDBMS?你基本上是在要求一个“动态轴心点”。@Joe Stefanelli:我在使用MySQL