You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL中连接不同数据类型字段:合并Table1与Table2得到Table3

现有表结构与数据

Table1

IDNameClassDateIntimeINAM
1001Smith1st09-12-20228:30 AMP

Intime字段数据类型:time(7)

Table2

IDNameClassDateIntimeINAM
1001Smith1st10-12-2022AbsentA

Intime字段数据类型:varchar

目标结果(Table3)

IDNameClassDateIntimeINAM
1001Smith1st09-12-20228:30 AMP
1001Smith1st10-12-2022AbsentA

解决方案

你需要的是合并两个表的记录而非关联连接,用UNION ALL即可实现,核心是统一两个表对应列的数据类型:

以SQL Server为例,将Table1的time(7)类型Intime转换为varchar,与Table2的字段类型匹配:

SELECT 
    ID,
    Name,
    Class,
    Date,
    CONVERT(varchar, Intime) AS Intime,
    INAM
FROM Table1

UNION ALL

SELECT 
    ID,
    Name,
    Class,
    Date,
    Intime,
    INAM
FROM Table2

补充说明

  • UNION ALL会保留两个表的所有原始记录,效率比去重的UNION更高,符合你的目标结果需求;
  • 不同数据库的类型转换语法略有差异:MySQL用CAST(Intime AS CHAR),Oracle用TO_CHAR(Intime),核心逻辑都是将时间类型转为字符串类型实现类型统一。

内容的提问来源于stack exchange,提问作者Smith

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 13:01:08