Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [SQL Server] Tách thành phần địa chỉ IP thiết bị

    Hệ thống giám sát mạng lưu địa chỉ IP dạng 'a.b.c.d'. Cần tách octet thứ nhất và thứ tư.

    Dùng PARSENAME để tách chuỗi phân cách bằng dấu chấm.

    Cột Kiểu Ý nghĩa
    thietbi nvarchar Tên thiết bị
    ip varchar Địa chỉ IP

    Lưu ý: PARSENAME đánh số từ phải sang trái, nên octet 1 = PARSENAME(ip,4), octet 4 = PARSENAME(ip,1).

    • Định dạng đầu vào:

      Bảng thiet_bi.

    • Ràng buộc đầu vào:

      Sắp xếp theo thietbi.

    • Định dạng đầu ra:

      Các cột thietbi, octet1, octet4.

    Ví dụ:

    Đầu vào:

    CREATE TABLE thiet_bi (thietbi nvarchar(20), ip varchar(20));
    INSERT INTO thiet_bi VALUES (N'Router',N'192.168.1.10'),(N'Switch',N'10.0.0.254');

    Đầu ra:

    Router	192	10
    Switch	10	254

    Giải thích:

    PARSENAME tach theo dau cham tu phai. Router '192.168.1.10' -> octet1=192, octet4=10. Switch '10.0.0.254' -> octet1=10, octet4=254. Sap theo thietbi: Router, Switch.

    Đang tải editor...