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

テーブルから最後のレコードIDを取得する最も安全な方法

    SELECT IDENT_CURRENT('Table')
    

    次のいずれかの例を使用できます:

    SELECT * FROM Table 
    WHERE ID = (
        SELECT IDENT_CURRENT('Table'))
    
    SELECT * FROM Table
    WHERE ID = (
        SELECT MAX(ID) FROM Table)
    
    SELECT TOP 1 * FROM Table
    ORDER BY ID DESC
    

    ただし、インデックススキャンが必要ないため、最初のスキャンの方が効率的です(ID列にインデックスがある場合)。

    2番目のソリューションは3番目のソリューションと同等です(どちらも最大IDを取得するためにテーブルをスキャンする必要があります)。



    1. MySQLポートアクセスを制限する方法

    2. Mysqlストアドプロシージャのループ内のステートメントを選択します

    3. SSHトンネルを介したMySQL接続

    4. 単一の列を持つテーブルから最初のNを除くすべての行を削除します