এসকিউএল কেস এক্সপ্রেশন সিনট্যাক্স?

কি কি সম্পূর্ণ এবং SQL কেস অভিব্যক্তি জন্য সিনট্যাক্স সঠিক?

0
ro fr hi
কেস এক্সপ্রেস হল সঠিক শব্দ যা তারা একটি স্কেলার মানের মূল্যায়ন করে (এছাড়াও এসকিউএলতে একটি বিবৃতি </কোড> "স্টেটমেন্ট টার্মিনেটর" যা আধা-কোলন) দ্বারা বন্ধ করা হয়।
যোগ লেখক Used_By_Already, উৎস

8 উত্তর

সম্পূর্ণ সিনট্যাক্স আপনার সাথে কাজ করছে এমন ডাটাবেস ইঞ্জিনের উপর নির্ভর করে:

SQL সার্ভারের জন্য:

CASE case-expression
    WHEN when-expression-1 THEN value-1
  [ WHEN when-expression-n THEN value-n ... ]
  [ ELSE else-value ]
END

বা:

CASE
    WHEN boolean-when-expression-1 THEN value-1
  [ WHEN boolean-when-expression-n THEN value-n ... ]
  [ ELSE else-value ]
END

এক্সপ্রেশন, ইত্যাদি:

case-expression    - something that produces a value
when-expression-x  - something that is compared against the case-expression
value-1            - the result of the CASE statement if:
                         the when-expression == case-expression
                      OR the boolean-when-expression == TRUE
boolean-when-exp.. - something that produces a TRUE/FALSE answer

Link: CASE (Transact-SQL)

এছাড়াও উল্লেখ্য যে WHEN বিবৃতির ক্রমটি গুরুত্বপূর্ণ। আপনি সহজেই একাধিক WHEN ক্লজগুলি যে ওভারল্যাপ করতে পারেন, এবং যেগুলি প্রথম মেলে সেগুলি ব্যবহার করা যায়।

Note: If no ELSE clause is specified, and no matching WHEN-condition is found, the value of the CASE expression will be NULL.

0
যোগ
এই সবসময় একটি এসকিউএল জিনিস হয়েছে? আমি শুধু সম্প্রতি এই আবিষ্কার করেছেন
যোগ লেখক mike james, উৎস

আমি একই জন্য ওরাকল পাতা খনন এবং এটি একই সিনট্যাক্স মত মনে হয়, ঠিক একটু ভিন্ন বর্ণিত।

Link: Oracle/PLSQL: Case Statement

0
যোগ
0
যোগ
আপনি রব ভ্যান Wijk ধন্যবাদ, আপনি সঠিক। আমি আমার উত্তর সম্পাদিত করেছি।
যোগ লেখক Leigh Riffel, উৎস
এই পিএল / এসকিউএল ক্ষেত্রে বিবৃতি
যোগ লেখক Rob van Wijk, উৎস

এসকিউএল সার্ভারে কেস স্টেটমেন্ট সিনট্যাক্স:

CASE column
   WHEN value1 THEN 1
   WHEN value3 THEN 2
   WHEN value3 THEN 3
   WHEN value1 THEN 4
   ELSE ''
END

এবং আমরা নীচের মতও ব্যবহার করতে পারি:

CASE 
   WHEN column=value1 THEN 1
   WHEN column=value3 THEN 2
   WHEN column=value3 THEN 3
   WHEN column=value1 THEN 4
   ELSE ''
END
0
যোগ

এখানে কেস </কোড> PostgreSQL ডক্স থেকে বিবৃতি উদাহরণ (Postgres এখানে এসকিউএল মান অনুসরণ করে):

SELECT a,
   CASE WHEN a=1 THEN 'one'
        WHEN a=2 THEN 'two'
        ELSE 'other'
   END
FROM test;

অথবা

SELECT a,
   CASE a WHEN 1 THEN 'one'
          WHEN 2 THEN 'two'
          ELSE 'other'
   END
FROM test;

Obviously the second fঅথবাm is cleaner when you are just checking one field against a list of possible values. The first fঅথবাm allows mঅথবাe complicated expressions.

0
যোগ

আপনি বিবেচনা একাধিক পণ্য ট্যাগ করা, আমি বলতে চাই পূর্ণ সঠিক সিনট্যাক্স ISO / ANSI SQL-92 মান পাওয়া যায়:

 ::=
       
     | 

 ::=
       NULLIF   
               
     | COALESCE  
                {   }... 

 ::=
       
     | 

 ::=
     CASE 
          ...
        [  ]
     END

 ::=
     CASE
       ...
     [  ]
     END

 ::= WHEN  THEN 

 ::= WHEN  THEN 

 ::= ELSE 

 ::= 

 ::= 

 ::=  | NULL

 ::= 

সিনট্যাক্স বিধি

1) NULLIF (V1, V2) is equivalent to the following :

     CASE WHEN V1=V2 THEN NULL ELSE V1 END

2) COALESCE (V1, V2) is equivalent to the following :

     CASE WHEN V1 IS NOT NULL THEN V1 ELSE V2 END

3) COALESCE (V1, V2, . . . ,n ), for n >= 3, is equivalent to the
   following :

     CASE WHEN V1 IS NOT NULL THEN V1 ELSE COALESCE (V2, . . . ,n )
     END

4) If a  specifies a , then let CO
   be the :

   a) The data type of each  WO shall be comparable
      with the data type of the .

   b) The  is equivalent to a 
      in which each  specifies a  of the form "CO=WO".

5) At least one  in a  shall specify a
   .

6) If an  is not specified, then ELSE NULL is im-
   plicit.

7) The data type of a  is determined by ap-
   plying Subclause 9.3, "Set operation result data types", to the
   data types of all s in the .

Access Rules

   None.

General Rules

1) Case:

   a) If a  specifies NULL, then its value is the null
      value.

   b) If a  specifies a , then its value
      is the value of that .

2) Case:

   a) If the  of some  in
      a  is true, then the value of the  is the value of the  of the first
      (leftmost)  whose  is
      true, cast as the data type of the .

   b) If no  in a  is true,
      then the value of the  is the value of the
       of the explicit or implicit , cast as
      the data type of the .
0
যোগ
শুধুমাত্র এক যারা সার্বজনীন সিনট্যাক্স প্রয়োজন ঠিকানা চেষ্টা!
যোগ লেখক Peter Majeed, উৎস

ওরাকলের মামলায় একটি পয়েন্টের কথা মনে রাখবেন, যদি মিলিত না হয় এবং অন্য কোন অংশ না থাকে তবে ব্যতিক্রম হয় না।

0
যোগ
আমি কি এই সংস্করণে প্রযোজ্য হবে তা নিশ্চিত নই। নিম্নলিখিত উভয় 10 জি বা 11 জি উপর ব্যতিক্রমগুলি বাড়াতে না। নির্বাচন করুন যখন 1 = 2 তারপর 'একটি' দ্বৈত থেকে শেষ; 1 টি ক্ষেত্রে নির্বাচন করুন 2 তারপর 'একটি' দ্বৈত থেকে শেষ;
যোগ লেখক Leigh Riffel, উৎস
এটি পিএল / এসকিউএল এ CASE স্টেটমেন্ট জন্য সত্য হতে পারে, কিন্তু এসইসিএর ক্ষেত্রে <�বি> এক্সপ্রেশন ক্ষেত্রে নয়
যোগ লেখক a_horse_with_no_name, উৎস
অতীতের দিকে, আমি মনে করি আমি 9i ফিরে সম্পর্কে কথা ছিল তারপর। :)
যোগ লেখক Tanveer Badar, উৎস

Sybase- এ একই কেস সিনট্যাক্স SQL সার্ভার হিসাবে:

বিবরণ

শর্তাধীন এসকিউএল এক্সপ্রেশন সমর্থন করে; কোথাও একটি মান এক্সপ্রেশন ব্যবহৃত হতে পারে ব্যবহার করা যেতে পারে।

বাক্য গঠন

কেস 
     কখন search_condition তারপর অভিব্যক্তি 
    [কখন search_condition তারপর অভিব্যক্তি]...
    [else অভিব্যক্তি]
end

কেস and values বাক্য গঠন

কেস অভিব্যক্তি
     কখন অভিব্যক্তি তারপর অভিব্যক্তি 
    [কখন অভিব্যক্তি তারপর অভিব্যক্তি]...
    [else অভিব্যক্তি]
end

পরামিতি

কেস

begins the কেস অভিব্যক্তি.

কখন

অনুসন্ধান শর্ত বা তুলনা করা অভিব্যক্তি আগে।

search_condition

is used to set conditions for the results that are selected. Search conditions for কেস অভিব্যক্তিs are similar to the search conditions in a where clause. Search conditions are detailed in the Transact-SQL User?s Guide.

তারপর

precedes the অভিব্যক্তি that specifies a result value of কেস.

অভিব্যক্তি

is a column name, a constant, a function, a subquery, or any combination of column names, constants, and functions connected by arithmetic or bitwise operators. For more information about অভিব্যক্তিs, see ?অভিব্যক্তিs? in.

উদাহরণ

select disaster, 
       কেস
            কখন disaster = "earthquake" 
                তারপর "stand in doorway"
            কখন disaster = "nuclear apocalypse" 
                তারপর "hide in basement"
            কখন monster = "zombie apocalypse" 
                তারপর "hide with Chuck Norris"
            else
                তারপর "ask mom"
       end 
  from endoftheworld
0
যোগ
এটি একটি কেস </কোড> বিবৃতির সিনট্যাক্সটি সহজে বোঝার জন্য অবিশ্বাস্যভাবে সহায়ক ছিল ধন্যবাদ, এবং + 1
যোগ লেখক Mike Varosky, উৎস