Таблица A состоит из firstname, secondname, lastname, msisdn, registrationdate.. table b имеет имя, имя, фамилию, msisdn, registrationdate и несколько других столбцов, но я хочу только рассмотреть эти упомянутые 5 столбцов. У меня есть что-то вроде этого
SELECT SELECT A.MSISDN,A.FIRSTNAME,A.SECONDNAME,A.LASTNAME,A.REGDATE, B.MSISDN,B.FIRSTNAME,B.SECONDNAME,B.LASTNAME,B.REGDATE
FROM TABLE1 A
INNER JOIN TABLE2 B ON A.MSISDN = B.MSISDN
WHERE A.FIRSTNAME != B.FIRSTNAME
OR A.LASTNAME != B.LASTNAME
Раньше я рассматривал только имя, фамилию из таблицы A и проверял несоответствие в таблице B, но я получаю тысячи записей в качестве результатов, и мне нужно было сузить поиск.
Как включить if if else здесь, чтобы
if a.firstname == b.firstname && a.secondname == b.lastname - Ignore this record.
if a.firstname == b.firstname && a.lastname == b.lastname - Ignore this record.
if a.firstname == b.firstname && a.lastname == b.secondname- Ignore this record.
if a.firstname not equal to b.firstname - show this record as result
if a.firstname == b.firstname && a.secondname not equal to b.lastname - show this record as result
else показывают все записи как результаты, которые не попадают ни в один из перечисленных выше случаев. Также, если это возможно, пожалуйста, включите решение, чтобы игнорировать заглавные буквы и маленькие буквы при проверке несоответствий.
проблема заключается в том, что после выполнения запроса из @sagi в результатах я получаю строки, которые имеют идеальное совпадение между первым, вторым и последним именами, но имеет другую дату регистрации - поскольку мы не рассматриваем дату регистрации в запросе, повлияет ли он на результаты?