0

asp.netアプリケーションでグリッドビューを使用しています。このアプリケーションでは、データセットを現在の月と年に送信されたリクエストに制限したいと考えています。

Iamは、アプリケーション開発と以下の方法での考え方に不慣れです

getdate()関数から月と年の部分を取得し、それをwhere条件のテーブルのreceiveddate列の月と年と比較します。

私のselectステートメントは以下のようになります

receivedate = getdate()であるcustomerrequestsからrequestno、receiveddate、businessneedを選択します

上記のSQLステートメントでどのように達成できますか

4

2 に答える 2

1

これを行うには2つの方法があります。

  • SQLでは、月と年の2つのパラメーターを渡します。これはあなたの質問がどのように聞こえるかであり、これを行うだけで行うことができます:

    select requestno,receiveddate,businessneed from customerrequests where YEAR(receiveddate) = YEAR(getdate()) AND MONTH(receiveddate) = MONTH(getdate())

  • もう1つの方法は、クライアント側で日付オブジェクトを作成し、それをクエリに渡してから、通常の日付比較手法を使用することです。

お役に立てば幸いです。

于 2012-10-30T19:35:15.990 に答える
0

あなたは以下のようなことをすることができます:

DECLARE @FirstDate DATETIME    
SELECT @FirstDate = DATEADD(month, DateDiff(Month, 0, GETDATE()), 0)

SELECT 
      requestno,receiveddate,businessneed 
FROM 
      customerrequests 
WHERE 
      receiveddate >= @FirstDate

お役に立てれば!!

于 2012-10-30T19:39:54.463 に答える