精华内容
下载资源
问答
  • 因项目要求,需要把SQLSERVER一张客户表的数据同步到oracle库的一张客户表,但两张表有时间类型不一致,需要进行转换 如下: 1 SELECT CUSTCODE,AgreementValidity_Start, 2 convert(datetime,replace(replace...

    因项目要求,需要把SQLSERVER一张客户表的数据同步到oracle库的一张客户表,但两张表有时间类型不一致,需要进行转换

    如下:

    1 SELECT CUSTCODE,AgreementValidity_Start,
    2         convert(datetime,replace(replace(replace(AgreementValidity_End,'', '-'),'','-'),'',''))
    3   FROM [APEXMIS].[dbo].[Customer] where CUSTCODE='SZX58202'

     

    转换结果:

     

    转载于:https://www.cnblogs.com/zougang/p/6756112.html

    展开全文
  • 一、关系型数据库与关系型...表头也称为字段名、列名通过相同的字段连接(联结)不同的表格二、数据类型一个字节八个bit,即八个二进制位数据类型有三大类:1、数值型2、字符型(字符串)3、时间日期型学号是字符串...

    410ab1eb9132c4b36e0b8ab80e61a895.png

    一、关系型数据库与关系型数据管理信息系统

    数据库是计算机软件,可以进行信息的存储和操作,如:增删改查。

    数据库可以比Excel存放更多的数据,允许许多人同时使用里面的数据。

    关系型数据库是由多个表组成的,各个表之间可以存在关系。

    1144b4ed0910b1a4edc0db90f4567a53.png

    表头也称为字段名、列名

    4cf5641ef8c42491aea0d67d24fa737a.png

    通过相同的字段连接(联结)不同的表格

    9e5ef2137fea5a846d8f641e5eb80ebf.png

    0f299982b9cb27ee4d8439168eaaa24e.png

    8f5101f1184bd8fd6e17bdabbcf19e14.png

    二、数据类型

    一个字节八个bit,即八个二进制位

    数据类型有三大类:

    1、数值型

    43329b30eb1de806c1ce2373702c0ff3.png

    2、字符型(字符串)

    9b7e1dc2be9e5cbf371d92cd5a2205d1.png

    3、时间日期型

    6245850fc940a488af19b56f94d0b2ad.png

    学号是字符串类型,因为数值类型不能以0开头

    注意事项:

    aaf14faa709e46f68feb9e48f15c10bc.png

    1d248835c20c2eee8a0642bcc3426f18.png

    727608c19c15772475eb8e6c6cddb463.png

    7a051808a311c91dabd9be0b8bcaa0d5.png

    三、SQL的语法

    6f02cd62bdaaa34296136807521730bc.png

    064593cf66624b40a4e4efa3940c2cb0.png

    65dc4cab29dada8e16970ba5a5f0785c.png

    关键字是数据库已经定义好的,有特别意义的单词,如:“SELEC”、“FROM”等。

    关键字不区分大小写,同时表名和列名(表头、字段名)也不区分大小写。但是插入表中的数据(表中的值)区分大小写。

    列名不能加单引号,列名是有特殊含义的应该用反引号。

    列名取名时,名称中不能有空格。as 设置列名和表名。

    53e58b1053b23a1633a8ea09919ea9de.png

    查询语句:

    37a60551ad04faabb4e74001724dd0ba.png

    列名取名时,名称中不能有空格。as 设置列名和表名。

    星号*查询全部出全部列

    select * from student;

    distinct删除重复数据

    77ed9903aa4018d20d359be7d2071882.png

    SQL运行顺序:

    f6409e20c5eeb792adff8c6b58196fcc.png

    995ff7dfbc54ac27c9b479b1a8cc1410.png

    执行顺序:from->where->group by->having->select->order by->limit

    e96f20490658ecdea9ebf4dfe098e472.png

    注释和SQL语句注意事项:

    870dbb86667272192c3db0222e961a8b.png

    2deafb91eed1a6b41b8a90d68bd7a670.png

    运算符:

    ca72ce45010cd269a1d8b30ec7d71944.png

    ef518ccc454a32554d650cc5277a14b1.png

    e636aeca48e12db3782d7a45f147ad7f.png

    1b08b9c757d2a0909ea233303d5bf083.png

    05c86cc55775b2be76da47200fb9183e.png

    比较运算符可以用来所有类型的值比较。

    字符串类型是按字节顺序进行排序的,所以字符串比较也是按字节顺序排序的。比如:'10' < '2'

    d502c0a6b930d5d7713d5cf2c14e3149.png

    abe91fd49e463b8d1ae3b9c30723eee6.png

    86a8adba5d39c5818cd3cbc65fa69abc.png

    8ba3a4f527328459b1ecfaf5bb5124d2.png

    67653596a258839ac657dd446b206ca7.png

    f7e30c0f89e92d5a272510e832bdb289.png

    da5c114f63ae4a0320226cd10c9f16f4.png

    911c9951caba985786de29a47eecbe9b.png

    字符串模糊查询like:

    0192f913bfe4c80cdbf02980d9265cc4.png

    f3b9e33487286dc0c6e1e471833b947e.png

    练习:

    创建表

    建立表结构

    学生表(student)

    9022bb0603aca107f30c2457ee3fc7f2.png
    CREATE TABLE `student` (
      `学号` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
      `姓名` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
      `出生日期` date NOT NULL,
      `性别` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
      PRIMARY KEY (`学号`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci

    注:时间类型不需要长度也可以

    成绩表(score)

    a0331b5235cba28dafa61b77bcc5dcb5.png
    CREATE TABLE `score` (
      `学号` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
      `课程号` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
      `成绩` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
      PRIMARY KEY (`学号`,`课程号`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci

    课程表(course)

    69d99b74b7501dc652500364b19d6671.png
    CREATE TABLE `course` (
      `课程号` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
      `课程名称` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `教师号` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      PRIMARY KEY (`课程号`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci

    教师表(teacher)

    0d8aa6f480d9176542a459df614f191c.png
    CREATE TABLE `teacher` (
      `教师号` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
      `教师姓名` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
      PRIMARY KEY (`教师号`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci

    插入数据

    学生表

    97c7079aa17c76c5bd134db6f5d4f9e3.png
    insert into student(学号,姓名,出生日期,性别) 
    values('0001' , '猴子' , '1989-01-01' , '男');
    
    insert into student(学号,姓名,出生日期,性别) 
    values('0002' , '猴子' , '1990-12-21' , '女');
    
    insert into student(学号,姓名,出生日期,性别) 
    values('0003' , '马云' , '1991-12-21' , '男');
    
    insert into student(学号,姓名,出生日期,性别) 
    values('0004' , '王思聪' , '1990-05-20' , '男');

    成绩表

    c613974f4c9df725b464358fede867b3.png
    insert into score(学号,课程号,成绩) 
    values('0001' , '0001' , 80);
    
    insert into score(学号,课程号,成绩) 
    values('0001' , '0002' , 90);
    
    insert into score(学号,课程号,成绩) 
    values('0001' , '0003' , 99);
    
    insert into score(学号,课程号,成绩) 
    values('0002' , '0002' , 60);
    
    insert into score(学号,课程号,成绩) 
    values('0002' , '0003' , 80);
    
    insert into score(学号,课程号,成绩) 
    values('0003' , '0001' , 80);
    
    insert into score(学号,课程号,成绩) 
    values('0003' , '0002' , 80);
    
    insert into score(学号,课程号,成绩) 
    values('0003' , '0003' , 80);

    课程表

    df1a9910f181cf4e30ea163ba5ac28df.png
    insert into course(课程号,课程名称,教师号)
    values('0001' , '语文' , '0002');
    
    insert into course(课程号,课程名称,教师号)
    values('0002' , '数学' , '0001');
    
    insert into course(课程号,课程名称,教师号)
    values('0003' , '英语' , '0003');

    老师表

    e5d75477c61a7ab58c757e4da5e43077.png
    -- 教师表:添加数据
    insert into teacher(教师号,教师姓名) 
    values('0001' , '孟扎扎');
    
    insert into teacher(教师号,教师姓名) 
    values('0002' , '马化腾');
    
    -- 这里的教师姓名是空值(null)
    insert into teacher(教师号,教师姓名) 
    values('0003' , null);
    
    -- 这里的教师姓名是空字符串('')
    insert into teacher(教师号,教师姓名) 
    values('0004' , '');

    3df71b4bf539301debaa03f78a308bdf.png

    c9eec50da7474c4360234a38180e8ba8.png

    【查询学生表】

    select * from student;

    1d0b466bdb700971725268eccc0207bd.png

    【查询姓“猴”的学生名单】

    select * from student WHERE `姓名` LIKE '猴%';

    138e21b7b06482bd9d64a1ac48175278.png

    【查询姓名中最后一个字是“猴”的学生名单】

    select * from student WHERE `姓名` LIKE '%猴';

    ee46a3fd76e368da3b2c97a2a9e5a2ea.png

    【查询姓名中带“猴”的学生名单】

    select * from student WHERE `姓名` LIKE '%猴%';

    4b985ed7212a6f8f06b6d888e376be68.png
    展开全文
  • 以备后续之用吧数据类型字符串知识点1:char和varchar的区别:前者是255字节的定长、后者是65536的可变的字节数量,只要不超过这个就行数字 知识点:int指的是4个字节的整形,一个字节是8位知识点2:单精度和多精度的...

    4140d2d9e8cfa3afe0ac4bf4e18d0cfe.png

    记录一点对于SQL学习的心得,以备后续之用吧

    • 数据类型
    1. 字符串
      1. 知识点1:char和varchar的区别:前者是255字节的定长、后者是65536的可变的字节数量,只要不超过这个就行
    2. 数字
      1. 知识点:int指的是4个字节的整形,一个字节是8位
      2. 知识点2:单精度和多精度的区别:float和double
    3. 日期
      1. 知识点:timestamp是时间戳,是日期和时间的组合形式(20382121234455)
    • 其他注意点
      • 知识点1:学号0001不是数值,因为正常的数值是不会以0为开头的,,所以他是varchar开头的
      • 知识点2:表哥中的长度255一般都是默认的
      • 知识点3:null指的是对应的数值可以包含空值;not null 对应列的数据值不可以包含空值
      • 知识点5:主键的意思是这一个数据不能有重复值
      • 知识点6:sql语法的values的()必须要是英文环境下的,中文环境下的,也是不行的
      • 知识点6:查询后都要单独建立一个程序行,有必要的时候需要将以前的程序删除掉,delete from course;
      • 知识点7:sql不区分关键字的大小写,比如insert这个,不关你是大写还是小写都一
      • 知识点8:输入符号的时候只能使用英文的

    0f48b02f84166457fd893d70ebfc1c6e.png
    展开全文
  • 关键字:数值,日期,字符,number,date,VARCHAR2varchar2,类型转换,oracle,plsql 在Oracle数据库中,有时要处理数值转换日期类型的数据。 首先,要确定Oracle数据库设定的系统时区,例如我们会用东8区。 ...

    关键字:数值,日期,字符,number,date,VARCHAR2,varchar2,类型转换,oracle,plsql

    在Oracle数据库中,有时要处理数值转换为日期类型的数据。

    首先,要确定Oracle数据库设定的系统时区,例如我们会用东8区。

    或者,当你能确定(1296490362 <===> 2011/02/01 00:12:42) 的时候,也表明是东8区。

    这时,我们可以使用下面的SQL来进行类型的转换:

     SELECT to_char((to_date('01-01-1970 08:00:00', 'dd-mm-yyyy hh24:mi:ss') + (1296490362 / 60 / 60 / 24)), 'yyyy/mm/dd hh24:mi:ss') as datetime
    FROM dual;

    如果不是东8区,要将8修改成对应的值。

    展开全文
  • SelectCONVERT(varchar(100),GETDATE(),0):0516200610:57AM SelectCONVERT(varchar(100),GETDATE(),1):05/16/06 SelectCONVERT(varchar(100),GETDATE(),2):06.05.16 SelectCONVERT(va...
  • SELECT to_char(to_date(m.ma_datetime,'yyyy-MM-dd hh24:... m.ma_datetime是varchar2类型的日期格式,先转换date类型(必须添加时分秒,不然报ora-01830错误) 然后在随心所欲的转换成varchar类型 转载于:ht...
  • 1、convert(data_type(length),data_to_be_... 参数1:希望转换成的数据类型,及长度。 参数2:被转换的数据的类型。 参数3:类型(可以没有)。 示例:1\ select convert(varchar(32),Password) from table ...
  • mysql中如何对varchar类型的字段进行转换成数字并求和sum sql SELECT sum(cast(字段名 AS DECIMAL (12,2))) FROM 表名; 值得注意的是,里面有个小坑,其中 Cast(字段名 as 转换的类型 ) 将字段转成对应的类型,类型...
  • 笔者在开发时,在数据库中存储的时间都是varchar2类型,比如日期‘’2017年01月02日22时12分22秒‘’存储在数据库中就是“20170102221222”所以笔者取出这些时间使用时,就会遇到将这个字符串格式化的问题,所以就...
  • 如何将字符串 20131224080910 转换成 2013-12-24:08:09:10 ? declare @s varchar(32) SET @s = N'20131224080910' select SUBSTRING(@s, 1,4) +'-'+ SUBSTRING(@s,5,2) +'-'+ SUBSTRING(@s, 7,2)+ ':'+...
  • 日期转换成字符串

    2019-10-03 01:56:37
    Select CONVERT(varchar(50), GETDATE(), 0) 05 16 2006 10:57AMSelect CONVERT(varchar(50), GETDATE(), 1) 05/16/06Select CONVERT(varchar(50), GETDATE(), 2) 06.05.16Select CONVERT(varch...
  • 做93学社项目的时候,用帆软做的报表,一直报无效的月份的错误,数据十几万条没法挨个...create or replace function is_DATE(datevar in varchar2) return Varchar2 is Result Varchar2(1); datetmp Date; begin S
  • 15:13:46 SQL> 15:13:46 SQL> CREATE TABLE ycz_test_1 2 (row_id varchar2(100), 3 ...
  • oracle中varchar类型的日期格式转换date类型 SELECT to_char(to_date(m.ma_datetime,'yyyy-MM-dd hh24:mi:ss'),...m.ma_datetime是varchar2类型的日期格式,先转换成date类型 (必须添加时分秒,不然报ora-018...
  • 1. 获取当前日期 select GETDATE() 格式化: select CONVERT(varchar,GETDATE(),120) --2017-05-12 16:33:10 2. 获取当前年--2017 select DATENAME(YYYY,GETDATE()) --2017 select DATENAME(YEAR,GETDATE())...
  • CREATE OR REPLACE FUNCTION blob_to_clob (blob_in IN BLOB) RETURN CLOB AS  v_clob CLOB;... v_varchar VARCHAR2(32767);  v_start PLS_INTEGER := 1;  v_buffer PLS_INTEGER := 32767; B...
  • 一般日期或时间字段都需要用于检索、排序,或者需要进行计算,例如计算时间是否过期,是否生效,多久后过期等等,使用date、datetime可以直接映射成想要的java对象,无需将字符串转换成对象,同时不存在2038年问题,...
  • SQL日期类型转换字符串 SQLServer 日期,字符串格式转换 convert(varchar,你的日期字段,...(如N=112,2006-02-03转换成20060203) N 日期样式 0 04 2 2005 9:06AM 1 04/02/05 2 05.04.02 3 02/04/05 4 02.04.0...
  • 点击上方SQL数据库开发,关注获取SQL视频教程SQL专栏SQL数据库基础知识...小数转成百分数我们在写SQL的时候有时候希望将小数转换成百分数显示,可以这样写:SELECT CONVERT ( VARCHAR(20),CONVERT ( DECIMAL (18, 2...
  • ORACLE日期格式转换

    2010-10-25 09:31:38
    今天一个朋友,数据库做了数据迁移,可是在新的oracle数据库中,却忘记了设置日期格式为date,而设置VARCHAR2,所以在数据库中显示的日期格式都是‘11-1月 -10’。 现在需要转换为‘YYYY-MM-DD’格式的,这样...
  • 点击上方SQL数据库开发,关注获取SQL视频教程SQL专栏SQL数据库基础知识...小数转成百分数我们在写SQL的时候有时候希望将小数转换成百分数显示,可以这样写:SELECT CONVERT ( VARCHAR(20),CONVERT ( DECIMAL (18, 2...
  • sql varchar 转date

    千次阅读 2018-08-12 17:28:13
    SELECT to_char(to_date(m.ma_datetime,'yyyy-MM-dd hh24:... m.ma_datetime是varchar2类型的日期格式,先转换date类型 (必须添加时分秒,不然报ora-01830错误) 然后在随心所欲的转换成varchar类型   ...
  • SQL Server中默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm 当从datetime或smalldatetime值进行...当我们用CONVERT进行日期转换后,如:CONVERT ( varchar(100), GETDATE(), 23 ),就会转变这种格式:2...
  • convert (varchar(10),字段名,你想转换成什么样的日期格式的代码) —日期转换格式的函数 eg 1: select convert (varchar(19),getdate()) ---执行结果: ---01 1 2021 3:03PM ---2021年1月1日 下午3:03 eg 2: ...
  • 可以利用Convert 来时行转换... 具体的sql 中可以这样 1、 selectleft(varchar,date_time_string,21),10) as date_timefrom table /*些种形式是采用字符串截取的形式实现的 */ 2、selectconvert(char(10),date...
  • 问题:varchar2类型转换成date类型 select to_date(INVOICE_DATE,'yyyy-mm-dd') from tab; --INVOICE_DATE varchar2(30) 提示 ORA-01830: 日期格式图片在转换整个输入字符串之前结束 错误 最后查的原因:INVOICE_...
  • 1,经过调试发现导入获取到的日期数据被装换1/1/10 0:00,如下图: 而将以上的数据插入数据库类型为datatime的列时会报错 2,经过去了解npoi的CellType之后发现: CellType.NUMERIC: NPOI中数字和日期都是...

空空如也

空空如也

1 2 3 4 5 6
收藏数 103
精华内容 41
关键字:

varchar2转换成日期