mysql中if...Elseの方法


mysqlにおけるif...elseの方法
最初のif文は式として使用され、構文フォーマットは次のとおりです.
		IF(expr1,expr2,expr3)

		SELECT
			IF(1>0, ' ', ' ')
		FROM
			Table

複数条件ネスト:
		SELECT
			IF(1>0, IF(2>1, ' ', ' '), ' ')
		FROM
			Table

CASE WHEN
		SELECT
			CASE 1
				WHEN 1 THEN '     1'
				WHEN 2 THEN '     2'
				ELSE '    3'
			END
		FROM
			Table
  :THEN     ELSE         ,     。

第二種類:IF…ELSE…プロセス制御文として使用し、文法形式は以下の通りである.
			IF search_condition THEN 
			 
			    RETURN()
			 
			ELSEIF search_condition THEN 
			 
			    RETURN()
			 
			ELSE 
			 
			    RETURN()
			 
			END IF

例えばN番目に高い給料の完備
CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT
BEGIN
  if N<0 then    
    RETURN (select min(Salary) from Employee);
  else   
    SET N = N-1;
    RETURN (
        select ifnull((select distinct Salary from Employee order by Salary desc limit N,1),null) as NthHighestSalay );
  end if;
END