**業務需要按實際成立金額排序,要用的有三個字段:price(商品**),pay(實際支付**),num(購買數量)。如果商品有優惠就是按pay**成立,也就是pay>0,如果沒有優惠就是實價成交,pay=0.所以我們要的實際**就是如果pay>0就是pay*num,否則就是price*num.這也就是要用到三目運算pay>0?pay:price.
那麼mysql有三目運算子嗎
可以用case when,這個mysql應該支援:select a,case when b is null then'***x' else b end b from table_*** where.還有這個
sql中也是支援三目運算的,語法為:
case when 條件 then 如果符合 else 如果不符合 end
所以在我們這業務中的sql語句就是:
select case when pay>0 then pay*num else price*num end as 『amount』 from table_name order by amount desc;
mysql 三元 三元聯絡簡介
在資料庫設計中或者以後的軟考中會遇到乙個相對來說有點難度的題,那就是對於er圖中三元聯絡如何確定的問題,因此在這做乙個簡單的介紹 一 確定關係 三元聯絡無非就是四中情況而已 1 1 1 1 1 n 1 m n m n p 下面對這幾種情況分別作 在資料庫設計中或者以後的軟考中會遇到乙個相對來說有點難...
mysql中的三元運算
mysql的if函式,例如 if expr1,expr2,expr3 說明 如果 expr1是true,則if 的返回值為expr2 否則返回值則為expr3 例項場景 如果video id為null,則直接返回空字元,避免不必要的查詢影響效率 select if isnull video id s...
mysql 判斷欄位非空的三元運算(三目運算)
平常用到的sql判斷函式一般有ifnull isnull 如果我們需要使用到類似於三元運算子去判斷並賦予不同的值 一般有case when做 select case 欄位名 when 判斷條件1 then 結果1 when 判斷條件2 then 結果2 else 結果3 from table nam...