sql >> データベース >  >> RDS >> Sqlserver

SelectでID列名を指定せずにID列の値を取得する方法-SQLServer/T-SQLチュートリアルパート46

    シナリオ:

    SQL Serverのテーブルと列をざっと見てみましたが、いずれかの列でIDプロパティが有効になっているかどうかがわかりませんでした。 IDが有効になっているかどうかに関係なく、システムテーブルを使用して列名を確認するのではなく、データを使用して列名を取得する必要があります。どのようにそれをしますか?


    解決策:

    選択に$Identityを使用すると、identity列のすべての値が返されます。

    いくつかのレコードを持つテーブルcustomerがあるとします。

    CREATE TABLE Customer (
        CustomerId INT Identity(1, 1)
        ,FirstName VARCHAR(50)
        ,LastName VARCHAR(50)
        ,Age SMALLINT
        ,PhoneNumber CHAR(9)
        ,DOB DATE
        ,Gender CHAR(1)
        )
     
    insert into dbo.Customer(FirstName,LastName,Age)
        Values('Aamir','Shahzad',66),
        ('Raza','M',44)
     
     
     
    データを含むID列を取得するには、以下の構文を使用できます

    SchemaName.TableNameから$identityを選択します

    dbo.Customerテーブルから値を含むID列を取得するには、次のようにします。以下のスクリプトを使用できます

    Select $Identity from dbo.Customer
     以下の結果が表示されます。

    SQLServerでシステムテーブルを使用せずにID列の名前と値を取得する方法


    ビデオデモ:選択でID列名を指定せずにID列の値を取得する


    1. XMLシリアル化のためのStringWriterの使用

    2. MySQLで次/前のレコードを取得する方法は?

    3. MySQLとMariaDBのデータベースプロキシの選択

    4. SELECTクエリで計算フィールドを再利用できますか?