sql实现IP的整数与字符串转化
数据库操作:利用函数减少存储空间(以时间换取空间)
例如一个表有IP列,在存储的时候我们为了减少存储空间,可以将它转化为整数,存储在数据库,但是在从数据库里查询并显示给大家看的时候,可能你是看不明白整数具体是什么。这样为了利于大家阅读分析数据,可以在查询的时候利用函数将整数IP转为为字符串
例如:
关键就是这个IpToString函数的实现:
在“函数”处,右击,选择“新建”,再选择“标量值函数”,在出现的页面里根据提示编写自己的函数,下面的函数是将IP对应的整数转化为字符串
USE [Test]
GO
/****** Object: UserDefinedFunction [dbo].[Ip2String] Script Date: 11/26/2009 11:42:15 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date, ,>
-- Description: <Description, ,>
-- =============================================
ALTER FUNCTION [dbo].[Ip2String]
(
-- Add the parameters for the function here
@ip int
)
RETURNS nvarchar(16)
AS
BEGIN
-- Declare the return variable here
DECLARE @result nvarchar(16)
-- Add the T-SQL statements to compute the return value here
SELECT @result = Cast ((@ip / power(2,24)) & 0xFF AS nvarchar) + '.'
+ Cast ((@ip / power(2,16)) & 0xFF AS nvarchar) + '.'
+ Cast ((@ip / power(2,8)) & 0xFF AS nvarchar) + '.'
+ Cast (@ip & 0xFF AS nvarchar)
-- Return the result of the function
RETURN @result
END
相关文档:
create database example
use example
create table major
(
spno varchar(10) primary key not null,
spname varchar(20) not null
)
create table student
(
sno varchar(10) primary key not null,
sname varchar(10) not null,
ssex varchar(2) not null, ......
//本程序连接的是sql server 2005,与连接sql server 2000有点不同:driverName和URL都不同
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class create{
public void getConnection() th ......
Case具有两种格式。简单Case函数和Case搜索函数。
--简单Case函数
CASE sex
WHEN '1' THEN '男'
WHEN '2' THEN '女'
ELSE '其他' END
--Case搜索函数
CASE WHEN sex = '1' THEN '男'
WHEN sex = '2' THEN '女'
ELSE '其他' END
这两种方式,可以实现相同的功能。简单Case函数的写法相 ......
标签:数据访问 ADO.NET
直接执行SQL命令 执行面向集合的操作( ......
sql DATEPART函数使用(摘抄)
sql DATEPART函数使用
DATEPART
返回代表指定日期的指定日期部分的整数。
语法
DATEPART ( datepart ,date )
参数
datepart
是指定应返回的日期部分的参数。下表列出了 Microsoft® SQL Server™ 识别的日期部分和缩写。
日期部分缩写
year
yy, yyyy
quarter
qq, q
mont ......