В доступе (не проверено):
select
[customer].teskilat_kodu, [customer].hesab_nomresi,
[customer].soyad, [customer].ad, [customer].ataadi, [customer].unvan,
[customer].tevellud, [customer].nomre, [customer].cins, [customer].status,
[customer].qohum_nomresi, [customer].email
from
[customer]
INNER JOIN
[kart_novleri] ON [kart_novleri].id = CInt([customer].kart_novu)
ORDER BY
[customer].id ASC
В TSQL примерно так должно работать:
select
[customer].teskilat_kodu, [customer].hesab_nomresi,
[customer].soyad, [customer].ad, [customer].ataadi, [customer].unvan,
[customer].tevellud, [customer].nomre, [customer].cins, [customer].status,
[customer].qohum_nomresi, [customer].email
from
[customer]
INNER JOIN
[kart_novleri] ON cast([kart_novleri].id as varchar(max)) = [customer].kart_novu
ORDER BY
[customer].id ASC
или это
select
[customer].teskilat_kodu, [customer].hesab_nomresi,
[customer].soyad, [customer].ad, [customer].ataadi, [customer].unvan,
[customer].tevellud, [customer].nomre, [customer].cins, [customer].status,
[customer].qohum_nomresi, [customer].email
from
[customer]
INNER JOIN
[kart_novleri] ON [kart_novleri].id = cast([customer].kart_novu as int)
ORDER BY
[customer].id ASC
В зависимости от ваших данных вы можете захотеть сделать «isnumber» для результатов приведения перед объединением, чтобы избежать фатальных ошибок. Я бы предложил использовать CTE для «массирования» столбца перед объединением, чтобы обеспечить надежность - ИЛИ сохраните исходное значение как int!