首页 > 电脑专区 > 电脑教程 >

sqlserver针对不同数据类型,如何等值连接查询

来源:互联网 2023-02-20 23:39:36 409

sqlserver中在查询过滤的时候,经常会碰到,以字符串的日期值去过滤日期类型的列,或者,不同数字类型的等值过滤,比如int、decimal、money、float等等数字类型匹配。他们的等值连接查询需要怎么做呢?OJg办公区 - 实用经验教程分享!

方法/步骤

  • 1

    创建一个临时表,用于演示sqlserver语法中的等值连接查询OJg办公区 - 实用经验教程分享!

    IF OBJECT_ID('tempdb..#tmp1') IS NOT NULL DROP TABLE #tmp1;OJg办公区 - 实用经验教程分享!

    CREATE TABLE #tmp1(OJg办公区 - 实用经验教程分享!

    Col1 varchar(50), OJg办公区 - 实用经验教程分享!

    Col2 varchar(200),OJg办公区 - 实用经验教程分享!

    Col3 int,OJg办公区 - 实用经验教程分享!

    Col4 datetime OJg办公区 - 实用经验教程分享!

    );OJg办公区 - 实用经验教程分享!

    sqlserver针对不同数据类型,如何等值连接查询?OJg办公区 - 实用经验教程分享!

  • 2

    创建另外一个临时表,用于演示sqlserver语法中的等值连接查询OJg办公区 - 实用经验教程分享!

    IF OBJECT_ID('tempdb..#tmp2') IS NOT NULL DROP TABLE #tmp2;OJg办公区 - 实用经验教程分享!

    CREATE TABLE #tmp2(OJg办公区 - 实用经验教程分享!

    Col1 varchar(50), OJg办公区 - 实用经验教程分享!

    Col2 varchar(200),OJg办公区 - 实用经验教程分享!

    Col3 decimal(18, 4),OJg办公区 - 实用经验教程分享!

    Col4 varchar(50) OJg办公区 - 实用经验教程分享!

    );OJg办公区 - 实用经验教程分享!

    sqlserver针对不同数据类型,如何等值连接查询?OJg办公区 - 实用经验教程分享!

  • 3

    往临时表中插入几行测试数据,其中某些数组在两个表虽然数据类型不同,但是插入相同的值OJg办公区 - 实用经验教程分享!

    insert into #tmp1(Col1, Col2, Col3, Col4) values('Code1', '第1行', 1, '2019-04-25');OJg办公区 - 实用经验教程分享!

    insert into #tmp1(Col1, Col2, Col3, Col4) values('Code10', '第2行', 10, '2019-04-26');OJg办公区 - 实用经验教程分享!

    insert into #tmp1(Col1, Col2, Col3, Col4) values('Code100', '第3行', 100, '言驾盆2019-04-27');OJg办公区 - 实用经验教程分享!

    OJg办公区 - 实用经验教程分享!

    insert into #tmp2(Col1, Col2, Col3, Col4) values('Code1', NULL, 1, '2019-04-25');OJg办公区 - 实用经验教程分享!

    insert into #tmp2(Col1, Col2, Col3, Col4) values('Code10', '第2行', 10, '2019-04-26');OJg办公区 - 实用经验教程分享!

    insert into #tmp2(Col1, Col2, Col3, Col4) values('Code100', '第N行', 100, '2019-04-30');OJg办公区 - 实用经验教程分享!

    sqlserver针对不同数据类型,如何等值连接查询?OJg办公区 - 实用经验教程分享!

  • 4

    查询临时表中的测试数据OJg办公区 - 实用经验教程分享!

    select * from #tmp1;OJg办公区 - 实用经验教程分享!

    select * from #tmp2;OJg办公区 - 实用经验教程分享!

    sqlserver针对不同数据类型,如何等值连接查询?OJg办公区 - 实用经验教程分享!

  • 5

    使用INNER JOIN关联两张表,查询Col2字符串列值相等的结果OJg办公区 - 实用经验教程分享!

    select *OJg办公区 - 实用经验教程分享!

    from #tmp1 aOJg办公区 - 实用经验教程分享!

    inner join #tmp2 b on b.Col1 = a.Col1OJg办公区 - 实用经验教程分享!

    where a.Col2 = b.Col2OJg办公区 - 实用经验教程分享!

    sqlserver针对不同数据类型,如何等值连接查询?OJg办公区 - 实用经验教程分享!

  • 6

    使用INNER JOIN关联两张表,查询int类型的数字和decimal类型数字忌注相等的结果,sqlserver会自动进行数据类型转换匹配OJg办公区 - 实用经验教程分享!

    select *OJg办公区 - 实用经验教程分享!

    from #tmp1 aOJg办公区 - 实用经验教程分享!

    inner join #tmp2 b on b.Col1 = a.Col1OJg办公区 - 实用经验教程分享!

    where a.Col3 = b.Col3OJg办公区 - 实用经验教程分享!

    sqlserver针对不同数据类型,如何等值连接查询?OJg办公区 - 实用经验教程分享!

  • 6相关内容未经许可获取自百度经验
  • 7

    使用INNER JOIN关联两张表,查询detatime类型的日期与字符串类型日期相等的结果,sqlserver会自肺五动进行数据类型转换匹配OJg办公区 - 实用经验教程分享!

    select *OJg办公区 - 实用经验教程分享!

    from #tmp1 aOJg办公区 - 实用经验教程分享!

    inner join #tmp2 b on b.Col1 = a.Col1OJg办公区 - 实用经验教程分享!

    where a.Col4 = b.Col4OJg办公区 - 实用经验教程分享!

    sqlserver针对不同数据类型,如何等值连接查询?OJg办公区 - 实用经验教程分享!

  • 以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!OJg办公区 - 实用经验教程分享!


    标签: SQL连接针对数据类型

    上一篇:简笔画女士挎包 下一篇:简笔画大铅笔
    办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码