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

SQL Server で一致する IP アドレスを照会する

    同じことのために次の関数を使用しました。試してみると、あなたにもうまくいくはずです.

    ユーザーの IP アドレスが IP アドレスの範囲内にあるかどうかを検証します。以下のスクリプトは、IP アドレスが範囲内にある場合は 1 を返し、そうでない場合は 0 を返します。

    CREATE FUNCTION IsIPAddressInRange
    (
        @IPAddress varchar(20),
        @StartRange varchar(20),
        @EndRange varchar(20)
    )
    RETURNS INT
    AS
    BEGIN
        DECLARE @MAXRANGE BIGINT = 256
        RETURN 
        CASE 
        WHEN PARSENAME(@IPAddress,1) + @MAXRANGE * PARSENAME(@IPAddress,2) + 
        @MAXRANGE * @MAXRANGE * PARSENAME(@IPAddress ,3) + @MAXRANGE * @MAXRANGE * @MAXRANGE * PARSENAME(@IPAddress ,4)
        BETWEEN
        PARSENAME(@StartRange,1) + @MAXRANGE * PARSENAME(@StartRange,2) + 
        @MAXRANGE * @MAXRANGE * PARSENAME(@StartRange ,3) + @MAXRANGE * @MAXRANGE * @MAXRANGE * PARSENAME(@StartRange ,4)
        AND
        PARSENAME(@EndRange,1) + @MAXRANGE * PARSENAME(@EndRange,2) + 
        @MAXRANGE * @MAXRANGE * PARSENAME(@EndRange ,3) + @MAXRANGE * @MAXRANGE * @MAXRANGE * PARSENAME(@EndRange ,4)
        THEN 1
        ELSE 0
        END     
    END
    

    上記の関数は こちら .



    1. DEFAULT制約を使用してmysqlの列にランダムな数値を作成するにはどうすればよいですか?

    2. オラクルのカーソルとは

    3. SQL Server再開可能インデックス:それはあなたにとって良いですか?

    4. MySQLでAで始まる名前を検索するにはどうすればよいですか?