sql >> Database teknologi >  >> RDS >> Sqlserver

SQL-strengsammenligning, større end og mindre end operatorer

Sammenligningsoperatorerne (inklusive < og > ) "arbejde" med strengværdier såvel som tal.

Til MySQL

Som standard skelnes der ikke mellem store og små bogstaver i strengsammenligninger og bruger det aktuelle tegnsæt. Standarden er latin1 (cp1252 West European), som også fungerer godt til engelsk.

Strengsammenligninger vil være følsomme for store og små bogstaver, når tegnsætsorteringen af ​​de strenge, der sammenlignes, er store og små bogstaver, dvs. navnet på tegnsættet ender på _cs i stedet for _ci . Der er virkelig ingen mening i at gentage al den information, der er tilgængelig i MySQL Reference Manual her.

MySQL Comparison Operators Reference:
http://dev.mysql.com/doc/refman/5.5/en/comparison-operators.html

Flere oplysninger om MySQL-tegnsæt/kollationer:
http://dev.mysql.com/doc/refman/5.5/en/charset.html

For at besvare de specifikke spørgsmål, du stillede:

Sp: er dette en mulig måde at sammenligne strenge i SQL?

A: Ja, i både MySQL og SQL Server

Sp: og hvordan virker det?

A: En sammenligningsoperator returnerer en boolean, enten SAND, FALSK eller NULL.

Sp: en streng mindre end en anden kommer før i ordbogsrækkefølge? For eksempel er bolden mindre end vand?

A: Ja, fordi 'b' kommer før 'w' i tegnsætsorteringen, udtrykket

  'ball' < 'water'

vil returnere TRUE. (Dette afhænger af tegnsættet og på sorteringen .

Sp: og denne sammenligning skelner mellem store og små bogstaver?

A: Hvorvidt en bestemt sammenligning skelner mellem store og små bogstaver eller ej, afhænger af databaseserveren; som standard er både SQL Server og MySQL ufølsomme mellem store og små bogstaver.

I MySQL er det muligt at lave strengsammenligninger ved at angive en tegnsætsortering, der er følsom over for store og små bogstaver (navnet på tegnsættet ender med _cs i stedet for _ci)

Sp: For eksempel BALL

A: Som standard er udtrykket

i både SQL Server og MySQL
  'BALL' < 'water'

ville returnere TRUE.



  1. Eksporter og importer tabeldump (.sql) ved hjælp af pgAdmin

  2. Introduktion til midlertidige tabeller i SQL Server

  3. Få standard seriel værdi efter INSERT inde i PL/pgSQL

  4. PHP til at gemme billeder i MySQL eller ej?