我有一个问题,我无法想出一个很好的方法来解决它,这是使用SQLServer 2008R2。
我有3张桌子
Client, Invoice, Car
客户端重复n次,但每个客户端都有一张票和一件产品。
所以我正在尝试整合客户端(使用唯一标识符),现在我的问题是如何更新产品和票证上的参考字段。
实施例
**Client**
[Nombre]
,[Apellido_Paterno]
,[Apellido_Materno]
,[Sexo]
,[Estado_Civil]
,[Fecha_Nacimiento]
,[RFC]
,[Saludo]
,[Persona]
,[Razon_Social]
,[Direccion]
,[Colonia]
,[Municipio_Delegacion]
,[Estado]
,[Codigo_Postal]
,[Lada_Casa]
,[Telefono_Casa]
,[Ext_Telefono_Casa]
,[Lada_Oficina]
,[Telefono_Oficina]
,[Ext_Telefono_Oficina]
,[Telefono_Celular]
,[Email_Personal]
,[Vehiculo_Actual_Anterior]
,[Marca_Actual_Anterior]
,[AnioModelo_Actual_Anterior]
,[Color_Actual_Anterior]
,[Escolaridad]
,[Venta_Id]
,[Nombre1]
,[Nombre2]
**Invoice**
[Factura_Cliente]
,[Factura_Distribuidor]
,[Precio_Base_Vehiculo]
,[Precio_Accesorios]
,[Precio_Vehiculo_DeContado]
,[Descuento]
,[Incentivo_Calculado]
,[Fecha_Entrega_DelVehiculo]
,[Fecha_Factura_Cliente]
,[Clave_Distribuidor]
,[Seguro_Gratis]
,[Clave_Promocion]
,[Tipo_Venta]
,[Unidad_de_Intercambio]
,[Venta_Id]
**Car**
[Modelo]
,[Marca]
,[AnioModelo]
,[Basico]
,[Cabecera]
,[Version]
,[Color_Exterior]
,[Color_Interior]
,[VIN]
,[Motor]
,[Transmision]
,[Origen]
,[Basico_Linea_Modelo]
,[Venta_Id]
我可以整合客户,(即使他们的领域存在差异),但我找不到有效的解决方案。
编辑:客户端上的第一列显示重复,而第二列是与票证和产品匹配的ID。
答案 0 :(得分:1)
我会再制作两张桌子。
一个用于新的整合客户端(与普通客户端具有所有相同的字段) 以及旧客户端和新客户端之间的映射表。
这个映射表应该存储旧映射表的id,以及它作为新映射映射到的映射表。
从这里很容易。根据映射表中当前的旧ID,使用新id更新其他表。