zoukankan      html  css  js  c++  java
  • 数据库字符串、日期及数据类型转换(cast /convert)

    数据库(字符串函数,日期函数,数据类型转换CAST,convert)

    use student

    go

    create table yuangong

    (

    code int,

    name varchar(20),

    sex varchar(20),

    age int,

    bumen varchar(20),

    )

    insert into  yuangong  values(1,'周数','男',27,'销售部')

    insert into  yuangong  values(1,'周的王','男',27,'销售部')

    insert into  yuangong  values(1,'地方','男',27,'销售部')

    insert into  yuangong  values(1,'周文王','男',27,'销售部')

    insert into  yuangong  values(1,'看王','男',27,'销售部')

    insert into  yuangong  values(1,'周王','男',36,'销售部')

    go

    Sp_renamedb    xxx , fff       --为数据库改名!xxx改成fff

    Alter table xinxi add  [int]  varchar(20)--  在xinxi 的表里添加int列,值类型是varchar(20).新添加的列不能设置  不为空!

    Alter table xinxi drop  column  [int]   --删除[int]列

    Update xinxi  set  nianling=26 where  fenshu between 80 and 100—修改。把分数80~100之间的人,年龄改为26。

    Select  distinct   name  from   xinxi –自动去除重复名字的信息!

    ################################################

    alter table yuangong add cid varchar(20)

    update yuangong set cid=370322198908120800

    ################################################

    --字符串函数

    --返回字符串的首字符ASCII编码

    select ASCII ('ame')  -—返回int值

    select ASCII(name)from yuangong   --注意应用格式

    select *from yuangong where ASCII (name)>200

    --将字符转化成对应ASCII代码

    select CHAR (100)

    select CHAR (age)from yuangong

    --查字符串,返回符合条件的首字母索引,索引从1开始,返回0代表没找到

    --(在C#中indexof索引从开始,返回-1代表没找到)

    select CHARINDEX ('efg','abcdefghijklmnopqrstuvwsyz')--此时显示5.表示‘efg’的从左向右第一个索引是5!

    select CHARINDEX ('199',cid) from yuangong --应用于表格的用法

    --字符串拼接

    select '1'+'abc'+'2'+'def'as 凭借   --执行,就会显示(凭借:1abc2def)

    --返回相似度

    select DIFFERENCE ('abcdefgh','abcdefgh')   --返回数字0~4,4代表完全相似!

    --从左向右截取字符

    select left ('abcdefg',3)--表示从左向右截取3位,显示abc

    select RIGHT ('abcdefg',3)--表示从右向左截取3位,显示efg

    --返回字符串长度

    select LEN(' a v    ') --返回. 后面的空格不算,前面和中间的都算!

    --全部小/大写

    select LOWER('ASDFGcvx')--显示asdfgcvx

    select UPPER ('abcdddc')--显示ABCDDDC

    --从左边去空格

    select LTRIM ('    34332aaa              ')

    --显示时,去除左面空格!显示:34332aaa

    select RTRIM ('                 3234     ')

     --显示时,去右边空格!显示:               3234

    --替换

    select REPLACE ('1234567890','456','abcd')

    --显示123abcd7890.(要替换的字符串,要替换的内容,修改后的内容)

    select REPLACE (cid,'606','103')from yuangong  --应用于表格中的格式

    -复制并粘贴

    select REPLICATE ('abc',3)--复制abc并粘贴3次

    --顺序翻转

    select REVERSE ('abcde')--显示edcba

    select REVERSE (name)from yuangong --在表格中应用格式

    --空格

    select 'a'+SPACE (99)+'b'  --拼接ab为了方便观察!个空格

    -截取数字

    select STR(123456.789012345,10,9)--10是包含.在内的总数字个数';9是小数点后保留的个数.以前面数字为主.

    --替换字符串

    select STUFF ('abcdefgh',4,2,'  hello  ')--4代表从左向右的第四个索引开始(从开始),2代表替换的字符个数。此时显示abc hello fgh

    -截取字符串

    select SUBSTRING('abcdefg',4,2)  --从指定第4个索引处开始,截取指定2个长度字符串.此时显示de

    --常用:大小写,翻转, charindex, substring, len

    #################################################################

    --日期时间数据类型及函数

    -给一个时间加上一段时间

    select  DATEADD (year,2,'2006-01-01')  --显示2008-01-01

    --求时间差(年,月,天,时,分……都行)

    select DATEDIFF (YEAR ,'2011-07-01','2014-07-01')--显示3年.

    select DATEDIFF (DAY,'2011-07-01','2014-02-03')--显示948天.

    --提取年,月,日,时,分,秒,星期等

    select DATENAME (weekday ,'2014-11-02')--显示'天'是.'月'是.'年'是.返回值是nvarchaer

    select DATEPART(WEEKDAY  ,'2014-11-02')--作用同上,返回值int

    select YEAR ('2014-11-02')--提取年:2014, month 月,day 天.注意格式.作用等同DATEPART

    select GETDATE()as 当前时间       --获取数据库当前时间!

    select ISDATE('2013-06-31')--判断日期格式是否正确,对:1,错:0.

     --常用ISDATE ,GETDATE ,DATEPART ,

     类型转换CASTCONVERT

    select CAST (123 as varchar(20))  --得出varchar型123 。

    select CAST (1.23 as int )        --得到int型1.

    select CAST (123 as decimal(10,2))--得出decimal型123.00.这里10表示显示数字总个数,2表示小数点后个数

    select CAST (12.3 as decimal(18,2))--得出12.30.

    select CONVERT (int,123.45)

    --用法与CAST相反!

    select name,(SUBSTRING(cid,7,4)+'年'+SUBSTRING(cid,11,2)

    +'年'+SUBSTRING(cid,13,2)+'月') as 生日 from yuangong

     字符串型数值和日期型数值须要   ‘ ’   ,int型数值型不用!

     ########################################

  • 相关阅读:
    Linux 下 发布jar
    Jquery判断浏览器版本
    根据2个字符串得到2个串之间的连续数 并返回list
    Eclipse中user library包管理
    /bin/sh^M: bad interpreter: No such file or directory AND 使用Shell脚本查找程序对应的进程ID,并杀死进程
    split方法为空判断
    apache common 工具
    fmt:message key为el表达式 fmt其他格式化
    集群
    shell脚本控制jar的启动和停止
  • 原文地址:https://www.cnblogs.com/huaze/p/4069532.html
Copyright © 2011-2022 走看看