-1

最近追加された顧客を取得したい。行が追加された日時を格納する列がありません。主キーは ですCust_ID。これはIDENTITY列ではなく、必ずしも昇順で入力されるとは限りません。

これは私のテーブルでCustomer、次の順序で 3 つの行が追加されたとします。

Cust_ID       Cust_Name      Cust_Age
-------------------------------------
2             C              23
6             A              25
3             B              22

上記の例では、最後のレコード ( ) を取得したいと考えていますB。テーブルの最後の行を返す (昇順に依存せずに) SQL Server に事前定義された関数はありますか?

4

5 に答える 5

3

テーブルにIDENTITYまたは列がない限り、最後に挿入された行を取得することはできません。DateTime

于 2013-11-14T16:22:58.810 に答える
3

テーブルに使用可能なメタデータがなく、スキーマを編集してタイムスタンプ列または ID 列を使用できない場合は、SQL Server のメタデータ生成メカニズムに依存する必要があります。1つはCDCです。

CDC はChange Data Captureの略で、名前が示すように、データに適用された変更を理解するのに役立ちます。このメタデータを使用して、テーブルに挿入された最新のレコードを理解できると思います。

于 2013-11-14T16:25:32.267 に答える
2

また

  • タイムスタンプを追加

また

  • 自動インクリメント/ID キーを追加する
于 2013-11-14T16:23:32.263 に答える
2

テーブル スキーマを変更できない場合は、最後に挿入されたレコードのみを格納する同じスキーマを持つ新しいテーブルを追加することを検討してください。

于 2013-11-14T16:33:03.680 に答える