共计 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 网 – 提供最优质的资源集合!
正文完