Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.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
select语句中的mysql大小写_Mysql - Fatal编程技术网

select语句中的mysql大小写

select语句中的mysql大小写,mysql,Mysql,我有两张桌子 1个访问表 visit_id | visit_date | premises_name 1 2012-04-25 abc 2 2012-04-25 xyz 3 2012-04-25 yio 2样本表 visit_id | sample_id | item_name 1 ab

我有两张桌子

1个访问表

visit_id     |   visit_date    |   premises_name
   1             2012-04-25        abc
   2             2012-04-25        xyz
   3             2012-04-25        yio
2样本表

visit_id    |   sample_id     |   item_name
   1               abc_332          lmn
   1               xyz_342          pqr
   2               lsl_324          plk
每次访问可以有多个样本

我想要输出以下结果的查询

visit_id   |  visit_date |  is_sample_taken
   1          2012-04-25         YES
   2          2012-04-25         YES
   3          2012-04-25         NO
我搜索了很多,但没有找到解决方案。请帮助

尝试以下方法:

select visit_id , visit_date , case when sum(case when b.visit_id is NULL then 0 else 1 end) > 0 then  'YES' else 'NO' end as sampletaken
from visittable as a LEFT OUTER JOIN sampltetable as b on a.visit_id = b.visit_id   
group by visit_id , visit_date

在Hiren Dhaduk回答的帮助/提示下,我得到了问题的答案

SELECT v.v_id, v.v_date, (
    CASE WHEN EXISTS (
        SELECT sample_id
        FROM sample
        WHERE visit_id = v.v_id
    )
    THEN 1 ELSE 0 END
) AS is_sample_taken
FROM visit v

@MarcinOrlowski:我不明白你的意思?@user1543848,建议你关注Jon Skeet在上的博客文章。很重要的一点是,你要提供一个你所做和失败的例子。谢谢你的建议。现在我明白了马辛·奥洛夫斯基为什么用非常粗鲁的方式评论。下次我一定会听从你的建议。无论如何,在海伦·达杜克的帮助/暗示下,我解决了我的问题。