本文主要介绍案例语句sql(sql中的案例),下面一起看看案例语句sql(sql中的案例)相关资讯。
sql中有两种形式的用例:简单用例函数和用例搜索函数。复制代码代码如下:简单的函数案例当 1 然后 男性 何时 2 然后 女性 另一端——案件搜索功能时,性别= 1 然后 男性 当性= 2 然后 女性 另外,这两种方法可以实现相同的功能,简单案例功能更简单,但与案例搜索功能相比。另一个需要注意的问题是,case函数只返回第一个条件值,其余的会被自动忽略。例如,在下面的sql部分中,第二种类型的复制代码是这样的:当col_1在(a,b)中时,然后是第一种类型,当col_1在(a)中时,然后是第二种类型else 其他端。让 让我们看看如何使用case函数。首先,将已知数据以另一种分组并进行分析。有以下数据:(为了看得更清楚,我没有 不使用国家代码,而是使用国家名称作为主键)。国家(国家)人口(人口)600美国100加拿大100英国200法国300日本250德国200墨西哥50印度250按国家 美国的人口数据,计算出亚洲和北美的人口。大陆人口亚洲1100北美250其他700你将如何解决这个问题用大陆代码创建视图是一个解决方案,但是很难动态改变统计方法。如果使用case函数,sql代码如下:复制代码如下:select and (population),case所在国家为 然后 亚洲及太平洋。;印度,然后是亚洲,日本,然后是亚洲,然后是美国,然后是北美,然后是加拿大,然后是北美,然后是墨西哥。然后,北美的另一端将会是 然后 亚洲及太平洋。;像印度,然后亚洲,日本,然后亚洲像我们,然后北美,然后加拿大,然后北美,然后墨西哥,然后北美的另一端。同样,我们也可以用这种方法来确定工资级别,计算每个级别的人数。复制代码代码如下:当 1 工资选500当工资500工资600工资800工资500工资600工资800工资1000)女员工的条件和男员工一样。第四,根据条件选择更新。比如以下更新条件的员工工资高于工资,降薪5%。工资在员工中,工资增长了10% .您可以很容易地考虑选择执行两条update语句,如下所示。复制代码代码如下:-条件更新人才集薪资=薪资* 0.9薪资范围5000;-有条件续约人才集薪资=薪资* 1.15薪资加薪资 amplt;4600 ampgt;2000;但这并不像想象的那么容易,有一个人 的薪水。一是根据条件降低工资,成为他们的工资。接下来运行第二条sql的时间因为人的工资范围内的限制而增加,最后人的工资不减反增。如果反过来,那么工资就会降低工资。不管规则有多荒谬,如果想要一条sql语句实现这个功能,我们需要使用如下的函数代码:复制代码代码如下:设置人才时更新薪资= salary = 5000,那么salary和salary amplt;4600 = 2000,那么薪资* 1.15其他薪资目标;需要注意的是,最后一行的其他工资是必须的。如果没有这条线,不符合这两个条件的人工资就写成null,这就是大事。这种方法也可以用在很多场合,比如关键工作的变动。一般来说,a、b这两个数据的主键交换,需要经过数据的暂存、复制、读取三个过程,比如函数的使用,一切就变得容易了。p_key col_1 col_2 1块3-b2lisi,sic,3国王武假设上面有数据,需要交换主密钥a和b,实现case函数时,代码如下。复制代码如下:当集合p_key =更新时,p _ key = a then 当p_key = b时,则 a其他p_keys以p_key结尾在(a,b);同样也可以换成两个唯一的密钥。需要注意的是,如果需要交换主键,表的设计通常是不够的。提案清单的设计是恰当的。五、两表数据的一致性检查。这样的函数是不同的解码函数。在case函数中,可以使用between,比如empty,existing等等。比如在使用中,存在,可以执行子查询实现更多功能。作为下一个掩码的示例,有两个表tbl_a、tbl_b和两个keycol列。现在让我们 让我们比较一下这两张表。如果tbl_a keycol列中的数据可以在tbl_b keycol列中找到,那么结果 匹配 被退回。如果没有找到,它返回结果 无可匹敌。要实现以下功能,可以使用以下两条语句复制代码如下:-使用时选择关键字,关键字在时从tbl_b中选择关键字(从tbl _ b中选择关键字)然后 匹配的else 无与伦比 来自tbl的结束标签;-使用时选择关键字,tbl _ a.keyword = tbl _ bkeyword)中有(select * from tbl_b)时。然后 匹配的else 无与伦比 来自tbl的结束标签;使用和存在的结果是一样的。也可以用不存在和不存在,但是这次一定要注意null。六、在用例函数中使用聚合函数。假设有一个表,表中有std_id,课程id(class_id),课程名称(class_name),剑(main_class_) 1001经济学y 1002历史学n 2002历史学n 2003考古学y 2004计算机3004计算机4005化学n 5006数学n有些同学选择在同一个地方学习。时间上有几门课(100,200),有的同学只选一门课(300,400,500)。选多门课的同学要选一门课作为自己的专业,主标志写y,只有一门课是国旗n(其实你写y就不会有麻烦了。)。例如,请包含更多)。现在我们必须根据以下两个条件查询只上了一门课并返回了课程id的人。选择几个主题并返回所选的主课程id。简单的想法是执行两个不同的sql语句进行查询。条件复制代码如下:-条件:只选择一门课的学生选择std_id,max(class_id)作为main_class,有从studentclass组到std_id (*) = 1的计数;结果执行std_id main _ class-三千四千四千五千六条件复制的代码如下:-条件:选择多门课的学生选择std _ id,class_id从main _ class _ flg中的studentclass取为主课= y;结果执行std_id main _ class-101203如果我们使用case函数,只需要一条sql语句就可以解决这个问题,如下图。复制如下所示的代码:select std _ id,当count (*) = 1时,——的学生只选择一门课程,max (class_id) other max(万一,main_class_ = y)然后class_id other空end),最后main_class。通过std_id从studentclass组获取s;;运行结果std _ id main _ class-1012033044055006通过在case函数中嵌套case函数,在聚合函数中使用case函数,我们可以轻松解决这个问题,使用case函数给我们更多的自由。最后提醒一下case函数新手不要犯以下错误。复制代码代码如下:case col _ 1 when 1 then 右当0然后 错止于此语句,此时零线总是回归未知,所以永远不会有错。因为这句话可以用在col_1 = null,这是一个错误的用法,此时我们应该选择使用col_1为空。
了解更多案例语句sql(sql中的案例)相关内容请关注本站点。