Возникла проблема, из-за которой у меня значительно меньше записей, когда я удаляю (CHARINDEX(',', CITY) > 0)
Что случилось? Как я могу это исправить?
По сути, этот код делит разделение 1 столбца, который содержит и город, и штат на 2 разных столбца, а затем, когда в этом 1 столбце просто указан правильный город (и нет штата), по умолчанию устанавливается город для этого, а затем штат. в другое правильное поле.
Количество записей, которое я получаю:
Количество записей: 4,229
SELECT MODIFICATION_FLAG, RECORD_KEY, ISO_COUNTRY_CODE, NATIONAL_ID, BIC, UNIQUE_ID, INSTITUTION_NAME, BRANCH_INFORMATION, OFFICE_TYPE, STREET_ADDRESS_1, STREET_ADDRESS_2, STREET_ADDRESS_3, STREET_ADDRESS_4, SUBSTRING(CITY, CHARINDEX(',', CITY) + 1, LEN(CITY))
AS STATE, SUBSTRING(CITY, 0, CHARINDEX(',', CITY, - 1)) AS CITY, ZIP_CODE, POB_NUMBER, COUNTRY_NAME, CHIPS_UID, CONNECTED_BIC, NETWORK_CONNECTIVITY, TIMEZONE, NATIONAL_ID_TYPE, EID
FROM srcFlatFile.dbo.SWIFT AS SWIFT
WHERE (ISO_COUNTRY_CODE = 'US')
Количество записей, которое я хочу:
Количество записей: 28 377
SELECT MODIFICATION_FLAG, RECORD_KEY, ISO_COUNTRY_CODE, NATIONAL_ID, BIC, UNIQUE_ID, INSTITUTION_NAME, BRANCH_INFORMATION, OFFICE_TYPE, STREET_ADDRESS_1, STREET_ADDRESS_2, STREET_ADDRESS_3, STREET_ADDRESS_4, SUBSTRING(CITY, CHARINDEX(',', CITY) + 1, LEN(CITY))
AS STATE, SUBSTRING(CITY, 0, CHARINDEX(',', CITY, - 1)) AS CITY, ZIP_CODE, POB_NUMBER, COUNTRY_NAME, CHIPS_UID, CONNECTED_BIC, NETWORK_CONNECTIVITY, TIMEZONE, NATIONAL_ID_TYPE, EID
FROM srcFlatFile.dbo.SWIFT AS SWIFT
WHERE (ISO_COUNTRY_CODE = 'US') AND (CHARINDEX(',', CITY) > 0)
Для ожидаемых результатов у меня должно быть количество записей 28 377 строк.