第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Laravel,如何在where查詢中使用select AS?

Laravel,如何在where查詢中使用select AS?

PHP
慕桂英4014372 2023-10-15 16:33:28
      $data['losers'] = $data['losers']             ->select(DB::raw('ROUND((((users_24h-users_48h_24h) / users_48h_24h) * 100),2) AS daypercentage, name'))             ->where('daypercentage', '>=', '0')如果我在 where 查詢中使用 daypercentage,則無法找到它。在這種情況下怎么可能呢?
查看完整描述

1 回答

?
泛舟湖上清波郎朗

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超3個(gè)贊

在 SQL 中,select子句中定義的別名不能在where子句中重復(fù)使用。您需要重復(fù)表達(dá)式(或使用子查詢或 cte)。

MySQL 有一個(gè)技巧,允許在having子句中使用別名,但我不建議在這里這樣做。您似乎只想要非負(fù)百分比,所以我認(rèn)為您的where條款可以簡(jiǎn)化為:

where users_24h >= users_48h_24h

我不確定用 Lavarel 表達(dá)這一點(diǎn)的最佳方式是什么,也許:

->select(DB::raw('round( (users_24h - users_48h_24h) / users_48h_24h * 100,2) as daypercentage, name'))
->where(DB::raw('users_24h >= users_48h_24h'))

請(qǐng)注意,我刪除了表達(dá)式中一些不必要的括號(hào)round()。


查看完整回答
反對(duì) 回復(fù) 2023-10-15
  • 1 回答
  • 0 關(guān)注
  • 122 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)