I usually just keep separate columns , do copies , do boolean union of them , make vertex auto merge by small distance to weed off redundant vertexes , make the intersecting edge split , then transfer normals from original columns to each split mesh accordingly . No shading artifacts at all . Done. Always perfect shading…
gotcha so it is a large architectural piece? And made of concrete or stone or something like that? If that is the case my first instinct would be to not merge them at all, rather leave the columns as individual units that can be used in a modular way but if you have to merge them do like benjamin said and perhaps increase…