0

mssql で実行されるクエリを試してみましたが、postgreSQL は実行されません...

SQLクエリは..

IF EXISTS (SELECT * FROM Kategoriler WHERE KategoriId = 119)
    BEGIN 
   SELECT * FROM Kategoriler
    END
    ELSE
   SELECT * FROM Adminler

私はそれを検索し、スタックオーバーフローで見つけました

DO
   $BODY$
   BEGIN
        IF EXISTS (SELECT 1 FROM orders) THEN
              DELETE from orders;
        ELSE 
              INSERT INTO orders VALUES (1,2,3);
        END IF;
   END;
   $BODY$

しかし、私はDOや$bodyなどを使用したくありません...関数やその他などを書きたくありません...

postgreSQLでifelse文だけ書きたいのですが...助けてください...

4

3 に答える 3

3

T-SQL は、IF などの手続き型ステートメントをサポートしています。PostgreSQL はこれをサポートしていないため、単純にクエリを postgres に書き換えることはできません。Igor のソリューションを使用できる場合もあれば、plpgsql (関数) を使用できる場合もあり、アプリケーションを変更して手続き型コードをサーバーからクライアントに移動する必要がある場合もあります。

于 2013-05-27T18:41:39.320 に答える