यदि कोई पंक्ति में कोई कीमत 38.03
है, तो निम्न खोज प्रतिबंधों को परिणाम को containg पंक्ति को वापस कर देना चाहिए।MySQL ऑपरेटर से अधिक या उसके बराबर है या उसके दायित्व के बराबर है
WHERE price >= '38.02' AND price <= '38.03'
(यह काम करता है)
WHERE price >= '20' AND price <= '100'
(यह काम करता है)
WHERE price >= '38.03' AND price <= '38.03'
(यह काम नहीं करता)
WHERE price >= '38.03' AND price <= '100'
(यह काम नहीं करता)
WHERE price >= '38.03'
(यह नहीं करता है काम नहीं)
WHERE price <= '38.03'
(यह काम करता है)
कीमत डीबी में एक फ्लोट के रूप में संग्रहीत की जाती है।
तो मूल रूप से, <=
काम कर रहा है जबकि >=
नहीं है। क्या ऐसा कोई कारण है?
आपको सिंगल कोट्स में मूल्य को संलग्न करने की आवश्यकता क्यों है? – BoltClock
क्या यह शास्त्रीय फ़्लोटिंग पॉइंट तुलना समस्या की भिन्नता नहीं है? ... मैं नाम भूल गया हूं ... –
अब बहुत देर हो सकती है, लेकिन कीमतें (और धन) को हमेशा डेसिमल प्रकार के रूप में संग्रहीत किया जाना चाहिए, कभी नहीं तैरता है। http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html – msw