mysql中sql块如何使用

55次阅读
没有评论

共计 1631 个字符,预计需要花费 5 分钟才能阅读完成。

自动写代码机器人,免费开通

这篇文章主要介绍了 mysql 中 sql 块如何使用,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让丸趣 TV 小编带着大家一起了解一下。

mysql 中 sql 块的用法:1、进行非默认的排序;2、更新替换某一个字段中的特定字符串【SELECT a.id FROM(..)】;3、求比例的 sql【b.num / a.sum * 100】。

mysql 中 sql 块的用法:

1、使用非默认的排序,例如使用 213 之类的排序

可以使用如下方法

SELECT DISTINCT
pg.part_grp_id,
pg.part_grp_name,
pg.equip_category_id
cost_part_grp pg,
cost_part_kit pk,
cost_part_event pe
WHERE
pe.mdl_ver_id IN (
SELECT
s.mdl_ver_id
cost_fleet_model s
WHERE
s.fleet_id = 1002
AND pe.part_kit_id = pk.part_kit_id
AND pk.part_grp_id = pg.part_grp_id
ORDER BY
CASE pg.equip_category_id
WHEN 2 THEN
WHEN 1 THEN
WHEN 4 THEN
END

2、mysql 更新替换某一个字段中的特定字符串

UPDATE t_bss_employees
SET mobilephone = REPLACE (mobilephone, 2129 , 0000)
WHERE
id IN (
SELECT
SELECT
t_bss_employees
WHERE
mobilephone IN (
 18121299262 ,
 18121299247 ,
 18121299206 ,
 18121299209 
) AS a
)

将 mobilephone 字段中的 2129 字符串替换为 0000

使用当前表为条件更新当前表。需要在条件处再添加一个()构建一个虚拟表

3、求比例的 sql

select a.style, ROUND(b.num / a.sum * 100,) as styleRate from (SELECT 
count(qspc.id) sum 
,qq.style style
from t_qc_security_plan_comment qspc 
inner join t_qc_question qq
on qq.id = qspc.question_id
LEFT JOIN t_qc_address qa ON qa.id = qspc.address_id
LEFT JOIN t_system_organ so on qa.hospital = so.id
WHERE qq.scr_level is not NULL
and qq.type = 3 and so.tenant_code = zzyy 
GROUP BY style) a left join (SELECT 
count(qspc.id) num 
,qq.style style
from t_qc_security_plan_comment qspc 
inner join t_qc_question qq
on qq.id = qspc.question_id
LEFT JOIN t_qc_address qa ON qa.id = qspc.address_id
LEFT JOIN t_system_organ so on qa.hospital = so.id
WHERE qq.scr_level is not NULL
and qq.type = 3 and so.tenant_code = zzyy 
and qspc.is_bad =0
GROUP BY style) b on a.style = b.style

计算逻辑是分别求总数和平均数。然后两数相除再用 round 求精度

感谢你能够认真阅读完这篇文章,希望丸趣 TV 小编分享 mysql 中 sql 块如何使用内容对大家有帮助,同时也希望大家多多支持丸趣 TV,关注丸趣 TV 行业资讯频道,遇到问题就找丸趣 TV,详细的解决方法等着你来学习!

向 AI 问一下细节

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-18发表,共计1631字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)