我有如下表:如何編寫多條件的MySQL語句?
id (integer, primary key)
amount_low (integer)
amount_high (integer)
fixedprice (decimal 4,2 Null)
percentadjust (decimal 4,2 Null)
itemname (varchar 50)
的記錄將在無論是「fixedprice」或「percentadjust」字段中的值,但不能同時使用。一個將是NULL,另一個將有一個值。
我需要基於單個輸入量得到記錄,「X」:
如果「fixedprice」字段的值,我需要得到記錄,如果X是> =(fixedprice * amount_low) AND X是< =(fixedprice * amount_high)。如果「percentadjust」字段有一個值,那麼如果X> =((((percentadjust/100)+ 1)* 3.5)* amount_low),則需要獲取記錄,並且X爲< =((( (percentadjust/100)+ 1)* 3.5)* amount_high)。
「3.5」是有時會發生變化的值,我不太在意那部分。
什麼是在MySQL中這樣做的好方法?
的樣本數據:(另見http://sqlfiddle.com/#!9/922a0)
id amount_low amount_high fixedprice percentadjust itemname
-----------------------------------------------------------------
1 20 25 2.25 NULL A
2 50 75 2.38 NULL B
3 23 32 NULL 9.75 C
4 14 22 NULL 9.12 D
5 96 112 2.58 NULL E
if(x1不爲null,x2爲null)或(x1爲null且x2不爲null) – Drew
@Drew我有點新手。你能爲此顯示MySQL語句嗎? –
當然。你可以創建一個sqlfiddle來創建和加載數據。我會測試它(或別人會) – Drew