![](/img/trans.png)
[英]PHP MySQL Query to Match dynamic field value with other fields dynamic match value condition based
[英]Add a dynamic field to a MySQL table based on a functions value
干草,我有一張桌子,上面有一個“ cost_price”字段的產品。 當用戶看到此字段時,已將其放入PHP函數中,該函數返回一個新值(基本上增加20%,然后根據用戶的注冊級別除去一定的百分比)。 假設此函數稱為“ final_price()”。 這需要並輸出一個浮點數。
我想執行這樣的查詢
SELECT * FROM `products` WHERE `member_price` BETWEEN `x` AND `y`
但是'member_price'字段不存在,這將是'final_price'函數的值。 因此,“ cost_price”將通過“ final_price”函數運行,並放入“ member_price”字段中。
有沒有辦法做到這一點?
這可以使您了解如何在sql中進行計算:
SELECT * FROM products WHERE
cost_price * 1.2 *
(SELECT user_level * $some_coefficient FROM users WHERE user_id = $uid)
between x and y
顯然,在計算之后需要應用過濾器,因此您的選擇是
從技術上講,您可以將計算結果反饋到數據庫中並從數據庫中進行選擇,但我認為這將是一個非常糟糕的解決方案,即使提到它,我也不得不log之以鼻。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.