Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 15603|Válasz: 0

[Forrás] Az SQL Server mezők csak kínai karaktereket, betűket és számokat tartalmazhatnak

[Linket másol]
Közzétéve 2018. 12. 07. 13:24:31 | | | |
Mivel néhány adatot lekérdezésre van szükség az adatbázisban, a mező tartalma csak kínai karaktereket, betűket és számokat tartalmazhat, és nem tartalmazhat speciális szimbólumokat (kivéve a speciális adatokat)
Először nézzük meg a hatásokat, a következők szerint:




Erőforrások:

Hogyan kérdez egy adatbázis SQL egy mezőt csak számokkal, betűkkel vagy kínai karakterekkel

- Csak számokat és betűket tartalmaz

Válaszd ki az oszlop nevét a tábla névből, ahol REGEXP_LIKE(oszlop név,'^([\u4e00-\u9fa5]+)$')

--Csak kínai karaktereket tartalmaz

válassza ki az oszlopnevet a tábla névből, ahol length(oszlop neve)=length(ASCIISTR(oszlop neve))-length(replace(ASCIISTR(oszlop neve),'\',''))


Megjegyzés: Az asciistr() függvény átalakítja a stringet ASCII értékké, és ha a karakter az ASCII kódtáblában van, akkor az ASCII megfelelő karakterévé alakul át; Ha nincs, például kínai és teljes szélességű karakterek, akkor átalakítják \xxxx formátumra.


A length() függvény azt számolja, hogy a kínai hossz 1, és a lengthb() kínai karaktere 2 bájt. A fenti állítás az, hogy a kínai karakterek számát összehasonlítsuk a \ számmal az ASCII értékekre való átváltás után, ha egyenlőek, akkor mindannyian kínai karakterek. (Ha ki akarod zárni a teljes szélességű szimbólumok hatását, először a mezőt kell félszélességre változtatni, és a függvény to_single_byte()).



A sqlserver2008r2 az első pozíciót keresi, ahol nem kínai alfanumerikus számok jelennek meg

Környezet:
A sqlserver2008r2 tesztadatbázis Chinese_PRC_CI_AS rendezési módszerrel rendelkezik, és más környezetekben még nem próbáltam
Nyilatkozat


Visszavételi érték: 4

Az én megoldásom

(Vége)





Előző:Díjkérdőív, honnan tudtad ezt az oldalt?
Következő:Módosítsd a saját átjáródra, és a belső és külső hálózatok egyszerre kapcsolódnak, feltéve, hogy két hálózati kártya van
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com