1

我有一个包含土耳其语国家名称的表,例如“TÜRKİYE”、“TUNUS”等。我有一个查询可以帮助我在该表中搜索国家名称。当我开始使用“TÜ”搜索时,它会带来“TÜRKİYE”、“TÜRKMENİSTAN”等。但是当我输入“TU”时,它会带来“TUNUS”。

我在这里想要的是,我输入“TU”,它会带来“TÜRKİYE”、“TÜRKMENİSTAN”和“TUNUS”等的所有结果。我在 I->İ、O->Ö、S->Ş 和所有其他土耳其语特定字符。

我的查询:

SELECT "Countries"."countryName",
"Countries"."countryCode",
"Countries"."telephoneCode",
"Countries"."isIbanMantadatory"
FROM "Countries"
WHERE "Countries"."countryName" LIKE :"countryParams" || '%' AND
"Countries"."telephoneCode" LIKE :"telefonParams" || '%'
4

1 回答 1

0

我找到了解决这个问题的方法。我希望这会有所帮助:)

SELECT "Countries"."countryName",
  "Countries"."countryCode",
  "Countries"."telephoneCode",
  "Countries"."isIbanMantadatory"
FROM "Countries"
WHERE     (Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace("Countries"."countryName", "Ü", "u"), "ü", "u"), "G", "g"), "g", "g"), "S", "s"), "s", "s"), "I", "i"), "İ", "i"), "Ö", "o"), "ö", "o"), "Ç", "c"), "ç", "c")) LIKE (Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(:"countryParams ", "Ü", "u"), "ü", "u"), "G", "g"), "g", "g"), "S", "s"), "s", "s"), "I", "i"), "i", "i"), "Ö", "o"), "ö", "o"), "Ç", "c"), "ç", "c")) || '%' AND (Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace("Countries"."telephoneCode", "Ü", "u"), "ü", "u"), "G", "g"), "g", "g"), "S", "s"), "s", "s"), "I", "i"), "İ", "i"), "Ö", "o"), "ö", "o"), "Ç", "c"), "ç", "c")) LIKE (Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(:"telefonParams ", "Ü", "u"), "ü", "u"), "G", "g"), "g", "g"), "S", "s"), "s", "s"), "I", "i"), "i", "i"), "Ö", "o"), "ö", "o"), "Ç", "c"), "ç", "c")) || '%'
于 2014-11-10T13:48:44.573 回答