MySqlスナック菓子—2、よく使う比較関数と比較オペレータ

2928 ワード

1、比較オペレータ:
=  、 >、  <、  >=、 <=、 <>、 != 、 <=>
この中で知っているのは<>と!=意味は同じですべて等しくない意味で、個人の好みを見ます
<=>は、比較する両側の値がNULLである場合に使用され、mysqlは「=」に似た比較子を提供し、異なるのは、両方の比較する数がNULLである場合にtrue(両側が等しいことを示す)を返し、一方がNULLである場合にfalse(両側が等しくないことを示す)を返す.「=」比較オペレータを使用している場合、両方のどちらか一方にNULLがある場合はNULLが返されます.
2、比較関数:
BETWEEN...AND:ある数がある範囲内であるかどうかを検出します. expr BETWEEN min AND max。 NOT BETWEEN...AND,
IN():ある がある の にあるかどうかを します. expr IN ( value ,...). するのはNOT IN()で、リストされていない を すINTERVAL(N , N1 , N2 , N3 ,...):N 1,N 2,.....の のNより きいインデックス、N 1、N 2...INTERVA(10,1,01001000)のようなサイズでソートする があります.この は2100のインデックスを2に します.
GREATEST():グループ の を します. するのはLEAST():グループ の を します.
IS:ブール と 、IS boolean_value、ここで が なのはboolean_valueには3 TRUE、FALSE、 UNKNOWN・UNKNOWNは が の に し、 えばNULL IS UNKNOWNはTRUEに る.ISとは にIS NOTで、 い は ています.

IS NULL: 。 ODBC IS NULL :

   1、 sql_auto_is_nullこのMysqlシステム は1(デフォルトは1)に されており、AUTO_INCREMENT された ( 、システム )を すると、 に されたレコードを の で できます.

SELECT * FROM tbl_name WHERE auto_col IS NULL
ここtbl_nameはテーブル 、auto_colは、 カラム に します. られたレコードの カラムに する は、LAST_を び します.INSERT_ID()の は じです.もちろん に した は のSELECTは されていませんが、もちろんsql_auto_is_null0 falseに されてもダメです.
2、DATEまたはDATETIMEのデータフォーマットに するフィールドであり、フィールドが でないNOT NULLに されている 、IS NULLで「000-00-00」という な を すことができ、 はコードである.
SELECT * FROM tbl_name WHERE date_column IS NULL
これは にODBCで「000-00-00」の がサポートされていないことを している.
IS NULLに するのはIS NOT NULLで、 たような い をしています.
STRCMP:2 を し、-1、0、1の3つの を します.
LIKE: なパターンマッチング、これはよく われる です. 、"%"は の の を し、また""は を します.まずLIKEのフォーマットを てみましょう.
expr LIKE pat [ESCAPE 'escape_char']
ここで ろのESCAPEは エスケープ です.デフォルトのESCAPE(エスケープ) は「」であり、「%」と「」を する がある は、デフォルトでは「%」と「」が できます.を します.「」を する がある は、「」を する があります.
「」を する がある は、「\\」を する があります.ここでは2 の があり、1 はparser(テキストペースト)が します(exprに「」 があればペーストが「\」に わります)、1 は するときです( すると「\\」が「\」に わります).
patは、 、 、または であってもよい.
LIKEは の にも えます. えば  10 LIKE '1%' true expr pat NULL LIKE NULL NOT LIKE LIKE