को संभालने का सबसे अच्छा तरीका मुझे SQL डेटाबेस में 0 से 35 9.9 डिग्री से एक श्रेणी का चयन करने की आवश्यकता है।360 डिग्री रेंज
मेरा इनट एक केंद्र कोण और एक सीमा के रूप में है। उदाहरण के लिए केंद्र = 100 रेंज = 50 मुझे कोण की एक श्रृंखला> 75 कोण < 125 देगा। हालांकि अगर केंद्र = 0, तो सीमा < 25 और कोण> 335 कोण होगी।
इस प्रकार मेरे वर्तमान एल्गोरिथ्म इस तरह काम करता है:
minangle = center-range/2
maxangle = center+range/2
if minangle<0, then minangle += 360
if maxangle>0, then maxangle -=360
अपनी क्वेरी में
फिर
if minangle<maxangle, I query angle>minangle AND angle<maxangle
if minangle>maxangle, I query angle>minangle OR angle<maxangle
यह दृष्टिकोण थोड़ा जटिल हो रहा है। क्या कोई बेहतर दृष्टिकोण है?
मॉड्यूलो गणित का उपयोग करें। '(कोण + रेंज)% 360'। शेष उचित 0-> 360 कोण होगा। –
http://stackoverflow.com/questions/9138790/cant-use-modulus-on-doubles। फ्लोट्स और युगल के लिए एफएमओडी का उपयोग करें। –
जो +360 -360 तर्क के साथ मदद करता है। मैं वास्तव में (minangle> maxangle) से बचने और – eng3