mirror of
https://github.com/alibaba/canal.git
synced 2026-11-04 00:30:15 +08:00
fix:当查询列包含常量拼接时解析主键字段进行条件拼接时会多出 where null=null (#2188)
This commit is contained in:
@@ -87,10 +87,13 @@ public class SchemaItem {
|
|||||||
.forEach((fieldName, fieldItem) -> fieldItem.getColumnItems().forEach(columnItem -> {
|
.forEach((fieldName, fieldItem) -> fieldItem.getColumnItems().forEach(columnItem -> {
|
||||||
// TableItem tableItem = getAliasTableItems().get(columnItem.getOwner());
|
// TableItem tableItem = getAliasTableItems().get(columnItem.getOwner());
|
||||||
// if (!tableItem.isSubQuery()) {
|
// if (!tableItem.isSubQuery()) {
|
||||||
List<FieldItem> fieldItems = columnFields.computeIfAbsent(
|
//当数据列并非原始列时,columnName是空的,例如concat('px',id)
|
||||||
columnItem.getOwner() + "." + columnItem.getColumnName(),
|
if(columnItem.getColumnName() != null) {
|
||||||
k -> new ArrayList<>());
|
List<FieldItem> fieldItems = columnFields.computeIfAbsent(
|
||||||
fieldItems.add(fieldItem);
|
columnItem.getOwner() + "." + columnItem.getColumnName(),
|
||||||
|
k -> new ArrayList<>());
|
||||||
|
fieldItems.add(fieldItem);
|
||||||
|
}
|
||||||
// } else {
|
// } else {
|
||||||
// tableItem.getSubQueryFields().forEach(subQueryField -> {
|
// tableItem.getSubQueryFields().forEach(subQueryField -> {
|
||||||
// List<FieldItem> fieldItems = columnFields.computeIfAbsent(
|
// List<FieldItem> fieldItems = columnFields.computeIfAbsent(
|
||||||
|
|||||||
Reference in New Issue
Block a user