1
我有一个SQL查询,它只是在每个字段中返回一个NULL值。它为数据库中输入的数据量返回正确的行数,但每个列值显示为NULL而不是MySQL中字段的值。SQL查询返回每个值为NULL
任何人都可以为我提供任何建议吗?
SELECT items.form_id as 'Form ID',
MAX(IF('field_id' LIKE 88,meta_value,NULL)) AS 'User ID',
MAX(IF('field_id' LIKE 96,meta_value,NULL)) AS 'Display Name',
MAX(IF('field_id' LIKE 95,meta_value,NULL)) AS 'User Role',
MAX(IF('field_id' LIKE 301,meta_value,NULL)) AS 'Your District',
MAX(IF('field_id' LIKE 97,meta_value,NULL)) AS 'Time Duty Logged',
MAX(IF('field_id' LIKE 84,meta_value,NULL)) AS 'Date of Duty',
MAX(IF('field_id' LIKE 85,meta_value,NULL)) AS 'Duty Start Time',
MAX(IF('field_id' LIKE 86,meta_value,NULL)) AS 'Duty End Time',
MAX(IF('field_id' LIKE 139,meta_value,NULL)) AS 'Duty Status',
MAX(IF('field_id' LIKE 142,meta_value,NULL)) AS 'Duty Type',
MAX(IF('field_id' LIKE 174,meta_value,NULL)) AS 'Which Event?',
MAX(IF('field_id' LIKE 103,meta_value,NULL)) AS 'Total Hours',
MAX(IF('field_id' LIKE 135,meta_value,NULL)) AS 'Duty Details',
MAX(IF('field_id' LIKE 136,meta_value,NULL)) AS 'End Section',
MAX(IF('field_id' LIKE 227,meta_value,NULL)) AS 'User Details',
MAX(IF('field_id' LIKE 228,meta_value,NULL)) AS 'End Section'
FROM wp_frm_item_metas as meta
JOIN wp_frm_items as items ON (items.id = meta.item_id)
WHERE items.form_id LIKE 6
GROUP BY meta.item_id
我已经试过了,现在也跟随我仍然得到NULL到位每个字段的值
SELECT items.form_id as 'Form ID',
MAX(IF('field_id' = 88,meta_value,NULL)) AS 'User_ID',
MAX(IF('field_id' = 96,meta_value,NULL)) AS 'Display_Name',
MAX(IF('field_id' = 95,meta_value,NULL)) AS 'User_Role',
MAX(IF('field_id' = 301,meta_value,NULL)) AS 'Your_District',
MAX(IF('field_id' = 97,meta_value,NULL)) AS 'Time_Duty_Logged',
MAX(IF('field_id' = 84,meta_value,NULL)) AS 'Date_of_Duty',
MAX(IF('field_id' = 85,meta_value,NULL)) AS 'Duty_Start_Time',
MAX(IF('field_id' = 86,meta_value,NULL)) AS 'Duty_End_Time',
MAX(IF('field_id' = 139,meta_value,NULL)) AS 'Duty_Status',
MAX(IF('field_id' = 142,meta_value,NULL)) AS 'Duty_Type',
MAX(IF('field_id' = 174,meta_value,NULL)) AS 'Which_Event?',
MAX(IF('field_id' = 103,meta_value,NULL)) AS 'Total_Hours',
MAX(IF('field_id' = 135,meta_value,NULL)) AS 'Duty_Details',
MAX(IF('field_id' = 136,meta_value,NULL)) AS 'End_Section',
MAX(IF('field_id' = 227,meta_value,NULL)) AS 'User_Details',
MAX(IF('field_id' = 228,meta_value,NULL)) AS 'End_Section'
FROM wp_frm_item_metas as meta
JOIN wp_frm_items as items ON (items.id = meta.item_id)
WHERE items.form_id = 6
GROUP BY meta.item_id
使用'User_ID'而不是'User ID'等等(没有空格!) – Tewdyn
field_ID需要反标记而不是撇号以及别名。因为它将'Field_ID'的比较字符串值设置为'88',这永远不会相等。 like运算符也需要%来比较动态值。如果field_ID是数字,我会建议直接向上=''比较 – xQbert
您使用单引号而不是反引号。我投票将这些类型的问题视为简单的印刷错误。 –