LeetCode MySQL 1440. 计算布尔表达式的值(case when then else end)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode MySQL 1440. 计算布尔表达式的值(case when then else end)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1. 題目
- 2. 解題
1. 題目
表 Variables:
+---------------+---------+ | Column Name | Type | +---------------+---------+ | name | varchar | | value | int | +---------------+---------+ name 是該表主鍵. 該表包含了存儲的變量及其對應的值.表 Expressions:
+---------------+---------+ | Column Name | Type | +---------------+---------+ | left_operand | varchar | | operator | enum | | right_operand | varchar | +---------------+---------+ (left_operand, operator, right_operand) 是該表主鍵. 該表包含了需要計算的布爾表達式. operator 是枚舉類型, 取值于('<', '>', '=') left_operand 和 right_operand 的值保證存在于 Variables 表單中.寫一個 SQL 查詢, 以計算表 Expressions 中的布爾表達式.
返回的結果表沒有順序要求.
查詢結果格式如下例所示.
Variables 表: +------+-------+ | name | value | +------+-------+ | x | 66 | | y | 77 | +------+-------+Expressions 表: +--------------+----------+---------------+ | left_operand | operator | right_operand | +--------------+----------+---------------+ | x | > | y | | x | < | y | | x | = | y | | y | > | x | | y | < | x | | x | = | x | +--------------+----------+---------------+Result 表: +--------------+----------+---------------+-------+ | left_operand | operator | right_operand | value | +--------------+----------+---------------+-------+ | x | > | y | false | | x | < | y | true | | x | = | y | false | | y | > | x | true | | y | < | x | false | | x | = | x | true | +--------------+----------+---------------+-------+ 如上所示, 你需要通過使用 Variables 表 來找到 Expressions 表中的每一個布爾表達式的值.來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/evaluate-boolean-expression
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
2. 解題
# Write your MySQL query statement below select left_operand, operator, right_operand, case when (l-r>0 and operator='>')or(l=r and operator='=')or(l-r<0 and operator='<') then 'true'else 'false' endas 'value' from (select e.left_operand, e.operator, e.right_operand,v1.value l, v2.value rfrom Expressions eleft join Variables v1on e.left_operand = v1.nameleft join Variables v2on e.right_operand = v2.name ) t我的CSDN博客地址 https://michael.blog.csdn.net/
長按或掃碼關注我的公眾號(Michael阿明),一起加油、一起學習進步!
總結
以上是生活随笔為你收集整理的LeetCode MySQL 1440. 计算布尔表达式的值(case when then else end)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里云 超级码力在线编程大赛初赛 第2场
- 下一篇: 阿里云 超级码力在线编程大赛初赛 第2场