Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

PostgreSQL में MySQL के ORDER BY FIELD () का अनुकरण?


MySQL के ORDER BY FIELD() को PostgreSQL में अनुकरण करने की प्रक्रिया निम्नलिखित है।

हमने PostgreSQL को चलाने के लिए एक ऑनलाइन कंपाइलर का उपयोग किया है।

PostgreSQL में MySQL के ORDER BY FIELD () का अनुकरण?

आइए अब देखें कि आउटपुट प्राप्त करने के लिए हमने ऊपर क्या किया।

सबसे पहले, हमने एक टेबल बनाई।

create table PostgreOrderIdDemo (
   countryName varchar(20)
);

INSERT कमांड की मदद से रिकॉर्ड डाला।

insert into PostgreOrderIdDemo values('IND');
insert into PostgreOrderIdDemo values('US');
insert into PostgreOrderIdDemo values('UK');

PostgreSQL में सिंटैक्स निम्नलिखित है।

SELECT * FROM yourTableName
ORDER BY
CASE
WHEN columnName='IND' THEN 1
WHEN columnName='US' THEN 2
WHEN columnName='UK' THEN 3
ELSE 0
END,columnName;

उदाहरण

आइए अब आउटपुट प्राप्त करने के लिए उपरोक्त सिंटैक्स का उपयोग करें।

SELECT * FROM PostgreOrderIdDemo
ORDER BY
CASE
WHEN countryName='IND' THEN 1
WHEN countryName='US' THEN 2
WHEN countryName='UK' THEN 3
ELSE 0
END,countryName;

आउटपुट

निम्न आउटपुट है।

PostgreSQL में MySQL के ORDER BY FIELD () का अनुकरण?


  1. पहले पिछले 3 महीनों तक ऑर्डर करें, फिर MySQL में वर्णानुक्रम में?

    आइए पहले एक टेबल बनाएं - );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.67 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें। यहां, हमने 2019 की तारीखें डाली हैं - डेमोटेबल में डालें1526 मान (बॉब, 2019-12-31); क्वेरी ठीक है, 1 पंक्ति प्रभावित ( 0.23 सेकंड) चयन कथन का उपयोग करके तालिका से सभ

  1. फ़ील्ड द्वारा ऑर्डर का उपयोग कैसे करें और एक एकल MySQL फ़ील्ड में आईडी द्वारा क्रमबद्ध करें?

    इसके लिए आप ORDER BY FIELD का इस्तेमाल कर सकते हैं। आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (1.78 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल मानों में डालें (250, जॉन); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.33 सेकंड) चयन कथन का उपयोग करके तालिका से

  1. MySQL IF/WHEN/ELSE/या ORDER BY FIELD के साथ

    आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable1884 ( Marks int );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1884 मान (87) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.00 सेकंड) इंसर्ट कमांड का उपयोग करके तालिका में कुछ रिकॉर्ड