Mysql 如何指定表联接返回的字段
经过大量的帮助,终于使这项工作开始了 我现在不知道如何只返回结果ie中的名字和姓氏字段:第二个表中的form_id的2和3 这可能吗?你想这样吗Mysql 如何指定表联接返回的字段,mysql,Mysql,经过大量的帮助,终于使这项工作开始了 我现在不知道如何只返回结果ie中的名字和姓氏字段:第二个表中的form_id的2和3 这可能吗?你想这样吗 SELECT c.name , c.custom_message , d.log_id , c.price , c.quantity , GROUP_CONCAT(case when d.form_id=2 then d.value end) AS first_name , GROUP_CONCAT(case when
SELECT c.name , c.custom_message , d.log_id , c.price , c.quantity ,
GROUP_CONCAT(case when d.form_id=2 then d.value end) AS first_name ,
GROUP_CONCAT(case when d.form_id=3 then d.value end) AS last_name
FROM wp_wpsc_cart_contents c
JOIN wp_wpsc_submited_form_data d ON d.log_id = c.purchaseid
WHERE c.name LIKE '%%'
GROUP BY d.log_id
ORDER BY c.name
您可以使用
大小写
表达式筛选特定表单字段。据SQL语法所知,您可以为每个表单id
获得多个结果,因此您必须对它们进行聚合:
, GROUP_CONCAT(case when d.form_id=2 then d.value end) AS first_name
, GROUP_CONCAT(case when d.form_id=3 then d.value end) AS last_name
回答有点晚,但如果你像下面这样尝试呢
SELECT c.name
, c.custom_message
, d.log_id
, c.price
, c.quantity
,(select GROUP_CONCAT(value)
from wp_wpsc_submited_form_data
where value like '%name%' and log_id = d.log_id)
AS VALUE
FROM wp_wpsc_cart_contents c
JOIN wp_wpsc_submited_form_data d
ON d.log_id = c.purchaseid
WHERE c.name LIKE '%%'
GROUP BY d.log_id
ORDER BY c.name
你可以使用你提供的小提琴 嗯。。不是真的。我想要的是。。事实上。。但只返回每个log_id的名字和姓氏,而不返回电子邮件地址和电话号码,即:拉入表单id 2和3,但不返回9和18,因此我在结果中查找相同的关联字段,但只返回这两个字段。这样做的目的是在结果中隐藏个人信息,如电子邮件和电话号码,而结果就在那里,但是正如你所说,每个for_id有多个结果。所以,很抱歉不得不问,但是我如何聚合它们呢?对不起-我想我把语法搞砸了,所以一切都有点混乱。你能帮我记下完整的问题吗?我们现在看的是哪把小提琴?是我,我会从这里开始。。。三个有效答案!!太多的帮助了!谢谢各位。我现在正在尝试如何将Q标记为已解决…在投票向上/向下箭头下方,将有一个类似的记号标记按钮,单击该按钮接受答案。还有,别忘了投票支持答案:)干杯——尽管我不能投票支持答案——声誉不够高。别担心,欢迎你。