0

このスクリプトは SQL Server 2008 で記述されており、Oracle SQL Developer で実行できるように Oracle SQL に変換する必要があります。誰でも正しい構文を知っていますか? ここで知りたい主なことは次のとおりです。1) ローカル変数の宣言 2) ローカル変数の設定 3) ローカル変数の使用 4) 日付の使用。高度なご支援をいただき、誠にありがとうございます。

DECLARE @Name VARCHAR(55)
DECLARE @Age INT
DECLARE @StartDate DATETIME
DECLARE @EndDate DATETIME

SET @NAME = 'Tim'
SET @Age = 55
SET @StartDate = '5/10/1999'
SET @EndDate = '9/22/2008'

SELECT *
FROM TblIdentifier ident
WHERE Name = @Name AND 
      Age = @Age AND 
      Birthday BETWEEN @StartDate AND @EndDate 
ORDER BY ident.ID
4

1 に答える 1

0

はい。スクリプトの代わりに SQL Plus を検討する必要があります。上のコメントのリンクをたどってください。必要なものを偽造する方法があるため、SQL Developerで使用できます。ここに簡単な例があります

WITH
konstants AS
(
    SELECT 'Tim' NAME,
           55    AGE
    FROM DUAL
)
SELECT *
FROM TblIdentifier 
WHERE NAME = (SELECT NAME FROM konstants) 
  AND AGE  = (SELECT AGE  FROM konstants)

これにより、定数がクエリの先頭に配置されるため、定数は 1 か所だけになり、必要なときに簡単に見つけて変更できます。

于 2013-10-18T00:40:26.953 に答える