mysql左连接去重_mysql左連接去重

这篇博客讨论了两个数据库表TB_BATCH和TB_BATCH_MASSAGIST的设计,用于管理批次和技师的分配。TB_BATCH包含批次信息如合同ID、城市和状态,而TB_BATCH_MASSAGIST则记录技师的ID、名字和状态。查询脚本通过左连接获取所有批次及其关联的技师,通过GROUP BY去除重复记录,展示了如何有效地管理服务分配。
摘要由CSDN通过智能技术生成

表如下

create table TB_BATCH(

ID                   int(11) not null auto_increment,

BATCH_NO              VARCHAR(32) comment '批次號',

CONTRACT_ID          int(11) comment '合同ID',

CONTRACT_NO              VARCHAR(64) comment '合同編號',

RULE_ID          int(11) comment '規則ID',

CITY                 VARCHAR(64) comment '城市',

COMPANY_NAME         VARCHAR(128) comment '企業名稱',

SERVICE_ADDRESS      VARCHAR(128) comment '上門地址',

EXP_DATE             date comment '日期',

EXP_BEGIN_TIME       time comment '開始時間',

EXP_END_TIME         time comment '結束時間',

MASSAGIST_COUNT      int(4) comment '技師數量',

STATUS               VARCHAR(16) not null comment '狀態:待分配、已分配、已確認、服務中、已完成、已取消',

OPERATOR             varchar(30),

CREATE_TIME          datetime,

MODIFY_TIME          datetime,

primary key (ID)

);

create table TB_BATCH_MASSAGIST(

ID                   int(11) not null auto_increment,

MASSAGIST_ID         int(11) not null,

MASSAGIST_NAME       VARCHAR(32) not null,

BATCH_ID             int(11) not null,

STATUS               VARCHAR(16) not null comment '狀態:NORMAL("待確認"), ASSIGNED("已確認"), IN_SERVICE("服務中"), COMPLETED("已完成")',

OPERATOR             varchar(30),

CREATE_TIME          datetime,

MODIFY_TIME          datetime,

primary key (ID)

);

左連接腳本

select A.* from TB_BATCH A left join TB_BATCH_MASSAGIST B on A.ID = B.BATCH_ID 查詢出來的記錄顯示

00daeb9ba8963594a29902ac584cca5e.jpe

發現記錄重復

去重腳本加入group by a.id

select A.* from TB_BATCH A left join TB_BATCH_MASSAGIST B on A.ID = B.BATCH_ID group by A.ID ,查詢結果如下

92494972e60ad6cab5116674476d8706.jpe

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值