मैं अपनी patientsतालिका में पंक्तियों का% प्रदान करने के लिए निम्नलिखित क्वेरी को चलाने का प्रयास कर रहा हूं जिसमें refinstस्तंभ का मान है । मुझे 0 का परिणाम मिलता रहता है।
select (count (refinst) / (select count(*) from patients) * 100) as "Formula"
from patients;
तालिका में 15556 पंक्तियाँ हैं, और select count(refinst) from patientsमुझे बताती है कि उन 1446 refinstस्तंभों में एक मूल्य है । जो प्रतिक्रिया मुझे क्वेरी से प्राप्त होगी, वह 30.62 ( 1446/15556*100=30.62XXXXX, दो दशमलव तक की) होगी।
मुझे पूरा यकीन है कि यह कुछ डेटा परिणामों के प्रकार के साथ क्या करना है (पूर्णांक मैं मान रहा हूं)। यदि मैं एक पूर्णांक द्वारा पूर्णांक को विभाजित करता हूं और परिणाम 0 से कम है, तो इसे 0 से छोटा किया जाता है? यदि ऐसा है, तो क्या कोई मुझे यह दिखा सकता है कि 2 दशमलव स्थानों के साथ संख्याओं के परिणाम कैसे डाले जाएं ताकि परिणाम 2 दशमलव स्थानों पर भी हो जाए?
मुझे यकीन है कि कई कोड स्टेटमेंट की तुलना में इस कोड को लिखने का एक बेहतर तरीका है। मैं विशेष रूप से इस क्वेरी को लिखने के लिए अधिक प्रोसेसर-कुशल तरीके की तलाश कर रहा हूं।