MySQLのの使用のいくつかについて
1.DBMS
1.1共有ファイル・システムに基づいて、DBMS
たとえば、次のMicrosoft AccessのとFileMaker
デスクトップでの使用のためではなく、通常はハイエンド以上の重要なアプリケーションのために。
クライアントに基づいて1.2 - サーバーDBMS
たとえば、次のようにMySQLのは、Oracle、Microsoft SQL Serverの
サーバー:すべてのデータにアクセスして処理するソフトウェアを担当し、このソフトウェアは、データベース・サーバーと呼ばれるコンピューター上で実行されます。データに関しては、データファイルのみサーバソフトウェアを扱う、追加、およびすべてのデータを削除することは、更新サーバソフトウェアによって要求されました。
クライアント:ユーザソフトウェアを扱って、クライアントがサーバーソフトウェアに要求を送信し、サーバソフトウェアが要求を処理し、ネットワークを介してクライアント・ソフトウェアに結果。
2.Mysql管理者
グラフィカルな対話型のクライアント、MySQLサーバの管理を簡素化
サーバーおよびログイン情報を入力するよう求めアイコンを表示し、その後、および(サーバー定義を使用すると、後で使用するために保存することができます)異なるビューを選択することができます:
サーバ情報(情報サーバ)表示状態情報と、クライアントとサーバのバージョンが接続されています。
サービスコントロール(サービスコントロール)が起動し、MySQLサーバを停止し、特性を指定することができます。
ユーザ管理(ユーザ管理)MySQLユーザーログインと権限を定義するために使用されます。
カタログ(ディレクトリ)が使用可能なデータベースをリストし、データベースとテーブルを作成することができます。
3. MySQLを使用する方法
[データベース3.1
#データベースのテストを選択
使用テスト;
3.2表示データベースのデータ
#すべてのデータベースを表示します
SHOWデータベース。
#ディスプレイテーブルのテストデータベース
使用テスト;
SHOW TABLESを。
#ディスプレイの列は、データベースのテーブルtable1をテスト
使用テスト;
TABLE1でSHOW COLUMNS;
#以下のステートメントまたは直接表示列の操作に
使用テスト;
TABLE1 DESCRIBE;
#表示サーバステータス情報
SHOWのSTATUS;
#表示は、特定のデータベースを作成するには
SHOWは、データベースを作成します。
#特別な表示テーブルを作成します。
SHOWは、CREATE TABLE。
#表示許可されたユーザー
SHOWのGRANTS。
#ディスプレイのサーバーのエラーや警告
SHOW ERRORSを。
SHOW警告。
すべての文は、#を示して参照してください。
HELPのSHOW。
3.3データを取得します
最後に、およびSQLステートメントは、大文字小文字を区別しません。#注複数のSQL文が基づいています
#大文字、小文字ですべてのSQLキーワードおよびすべての列とテーブル名を考えてみましょう
使用テスト;
#表1検索テストデータベーステーブルの列のCOLUMN1
SELECT column1の
TABLE1 FROM;
#複数の列を取得します
SELECT column1の、column2の、COLUMN3
TABLE1 FROM;
#すべての列を取得します。
選択する *
TABLE1 FROM;
#別の行を取得します
#部分はDISTINCT、例えば、2つの列を使用しないことに注意してくださいは、二つの異なるのいずれかが表示され
SELECT DISTINCT COLUMN1
TABLE1 FROM;
#注動作の最初の行を検索0
#制限の結果、最初の5行を表示
SELECT column1の
TABLE1 FROM
LIMIT 5;
#5の行5列の先頭から検索開始の行と行数を指定します。
SELECT column1の
TABLE1 FROM
LIMIT 5,5;
#または下記
ラインから#5は5行を取るようになりました
LIMIT 5 OFFSET
#完全修飾名とカラム名を使用することを示します
SELECT table1.column1
test.table1 FROM;
3.4ソートデータ検索
#ORDER BY句の位置:がある場合、FROM句にある、LIMIT句の前に、WHERE句は、その後、WHERE位置します
使用テスト;
#COLUMN1の列の並べ替えに従っ
#ソートカンマで区切って複数の列であってもよいが、ソート優先順位があります
配置された#デフォルトの昇順(ASC)
選択する *
TABLE1 FROM
COLUMN1 BY ORDER。
#降順指定
選択する *
TABLE1 FROM
COLUMN1 DESC BY ORDER。
#そして、複数の列に降順で、各列はDESCを指定します
混合、COLUMN1降順のソート#、次いでソーティングCOLUMN2
選択する *
TABLE1 FROM
COLUMN1 DESC BY ORDER、COLUMN2。
3.5データのフィルタリング
#MySQL大文字と小文字を区別しないマッチングが行われます
#条件フィルタ検索
使用テスト;
#列1 = 1表示データに
選択する *
TABLE1 FROM
WHERE COLUMN1 = 1。
#WHERE節オペレーター
#=、<>、!=、<、<=、>、> =、間
#ヌルチェック
WHERE COLUMN1はNULLです。
3.6データのフィルタリング
#優先AND演算子、複雑な操作の明示的なパケット括弧を使用して
使用テスト;
#ANDオペレータ、複数の条件が満たされています
選択する *
TABLE1 FROM
WHERE COLUMN1 = 1 AND COLUMN2 <= 2。
馴化満たす#OR演算子
選択する *
TABLE1 FROM
WHERE COLUMN1 = 1 OR COLUMN2 <= 2。
#IN演算子
#ユースケース:オプションの正当な長いリストを使用して、簡単に注文管理を計算し、実行速度のブロックを、他のSELECT文が含まれていてもよいです
選択する *
TABLE1 FROM
WHERE COLUMN1 IN(1,2)。
#NOT演算子
#列1マッチは1及び2に等しくありません
選択する *
TABLE1 FROM
WHERE COLUMN1 NOT IN(1,2);
3.7ワイルドカードろ過
#LIKE演算子
使用テスト
#パーセント記号(%)ワイルドカード文字、大文字と小文字を区別し、あなたが0の文字を一致させることができますが、NULLと一致することはできません
#彼が始まった任意の単語を取得
#検索モード「彼は%」
選択する *
TABLE1 FROM
WHERE COLUMN1 LIKE '彼は%';
ハローの任意の位置を含む。#。複数のワイルドカード、
選択する *
TABLE1 FROM
WHERE COLUMN1 LIKE '%のハロー%';
#アンダースコア(_)ワイルドカード
#マッチは、単一の文字(これ以上と劣らず)
選択する *
TABLE1 FROM
WHERE COLUMN1 LIKE '_こんにちは';
#出力:
column1のCOLUMN2
1こんにちは
2 Bハロー
#ワイルドカードのヒント
これは、#長い時間がかかります
#好み、他のアクションの目的を達成するために
#検索の先頭に配置することがないようにしてください
3.8正規表現検索
#使用しています。
#エキスの電話番号、番号と名前のために見て、
#テキストブロックは、すべての重複単語を見つけるために、交換用ページのURLをこれらのURLリンクのすべてに実際のHTMLに
#事例小文字を区別しない、あなたはBINARYキーワードの使用を区別します:WHERE column1のREGEXP BINARY「こんにちは.00」
使用テスト;
#列1は、テキスト検索100のすべての行が含まれています
選択する *
TABLE1 FROM
WHERE COLUMN1 REGEXP '100'
COLUMN1 BY ORDER。
#正規表現言語は、特殊文字は、式は任意の1つの文字に一致しています
SELECT column1の
TABLE1 FROM
WHERE COLUMN1 REGEXP」0.00' ;
出力:
COLUMN1
こんにちは100
Bハロー200
#LIKE '100' とREGEXP '100' の区別:
行全体が正確に対応する列の値が正規表現に一致する、一致等しくないであろう一致LIKE、それに含まれています
#OR-試合
SELECT column1の
TABLE1 FROM
WHERE COLUMN1 REGEXP '100 | 200'
COLUMN1 DESC BY ORDER。
出力:
COLUMN1
こんにちは200
こんにちは100
#複数の文字のいずれかと一致
#正規表現[123]を表す:1又は2又は3試合
#[]言語の別の形態ですか、
SELECT column1の
TABLE1 FROM
WHERE COLUMN1 REGEXP '[123]こんにちは'
COLUMN1 DESC BY ORDER。
出力:
COLUMN1
ハローの2
1ハロー秒
#使用 '1 | 2 | 3ハロー'
#本明細書中の「1」又は「2」又は「3ハロー」
SELECT column1の
TABLE1 FROM
WHERE COLUMN1 REGEXP '1 | 2 | 3ハロー'
COLUMN1 BY ORDER。
出力:
ハローの1
2つのハローS
世界100
世界200
#負の文字セットマッチ
SELECT column1の
TABLE1 FROM
WHERE COLUMN1 REGEXP '[^ 123]こんにちは'
COLUMN1 DESC BY ORDER。
#マッチング範囲
#[1-3]、[6-9]、[AZ]
SELECT column1の
TABLE1 FROM
WHERE COLUMN1 REGEXP '[1-5]こんにちは'
COLUMN1 BY ORDER。
出力:
0.5ハロー
ハローの1
2つのハローS
#マッチ特殊文字
#一致するため、任意の文字なので、それぞれの行が検索されます
#特殊文字は\\ \\導くため一致している必要があります - 検索を示している - \\検索を..
すべての文字#正規表現の特別の意義は\\エスケープ文字を使用する必要があります含め、|。、[]
#\\また、メタ文字を参照するために使用:
\\ Fフィード
\\ nは改行
\\ rは入力します
\\ tタブ
\\ V垂直タブ
SELECT column1の
TABLE1 FROM
WHERE COLUMN1 REGEXP '\\。'
COLUMN1 BY ORDER。
3.9は、計算フィールドを作成します
mysqlので違い:ほとんどのDBMSを達成するためにMySQLのconcat関数を使用して、ステッチを達成するために+記号を使用し、MySQLのステートメントにSQL文を変換するときには、この区別を覚えておく必要があります
使用テスト;
フォーマットCOLUMN1(column2の):出力#を取得した後
SELECTの連結方式(カラム1、 '('、COLUMN2、 ')')
TABLE1 FROM
COLUMN1 BY ORDER。
#Concatは()は、1つ以上の特定の列を必要とし、文字列は、それぞれの間にコンマで区切られました
#は、データを削除するには、右側に余分なスペースでデータを整理します
#RTrim()関数は、右の上のすべてのスペースを削除するには
SELECTの連結方式(RTRIM(COLUMN1)、 '('、RTRIM(COLUMN2)、 ')')
TABLE1 FROM
COLUMN1 BY ORDER。
#LTrim()の両側にスペースを削除するために、スペースが左トリム()関数を削除する機能
#あるいは別名(エイリアス)、またはフィールドの値を使用
#ASキーワードで授与
SELECTの連結方式(RTRIM(COLUMN1)、 '('、RTRIM(COLUMN2)、 ')')AS COLUMN_TITLE
TABLE1 FROM
coulmn1 BY ORDER。
#使用別名:名前の変更は、実際のテーブルのカラム名に不正な文字が含まれています。それがあいまいな展開または元の名前を誤解したときに、時々呼ばれる輸出行
#算術計算を実行
SELECT column1の、column2の、column1の* COLUMN2 column_sum AS
TABLE1 FROM;
MySQLの算術演算子:
演算子説明
+プラス
- レス
*乗算
/部門
#テストの計算
3 * 2を選択します。
#テストトリム()関数
SELECTトリム( 'ABC');
#テスト今、()関数は、現在の日付と時刻を返します。
今、SELECT();
データ処理機能を使用して3.10
ほとんどのSQLの実装ではサポートされているタイプの機能します:
テキスト文字列(例えば、欠失または充填値、大文字または小文字の換算値)テキスト機能を処理します。
数値データに対する算術演算のための関数値(例えば、絶対値、代数演算を返します)。
これらの値から日付と時刻の値とを抽出し、特定の成分を処理するための日付と時刻の関数(例えば、日付の有効性などを確認し、2つの日付の間の差を返します)。
DBMSは、特定の情報を返すために使用されるシステム機能の(ユーザのログイン情報が返されるようなバージョンの詳細を確認してください)
テキスト処理関数
使用テスト;
#Upper()は大文字にテキストを変換します
SELECT column1の、アッパー(COLUMN1)column1_upcase AS
TABLE1 FROM
COLUMN1 BY ORDER。
出力:
COLUMN1 column1_upcase
ABC ABC
DEF DEF
一般に使用されるテキスト処理機能
機能 |
説明 |
左() |
の左にある文字列を返します |
長さ() |
文字列の長さを返します。 |
見つけて() |
文字列の部分文字列を検索します |
下の() |
小文字に文字列を変換します |
LTRIM() |
スペースの左にある文字列を削除します |
正しい() |
リターンの右側にある文字の文字列 |
RTRIM() |
右側の文字列にスペースを削除 |
SOUNDEX() |
文字列のSOUNDEXの値を返します。 |
SUBSTRING() |
文字列を返します。 |
アッパー() |
文字列は、大文字に変換しました |
SOUNDEX:発音の説明にテキスト文字列を、あなたが同様の音異なる開始値を見つけることができます
#Sundex()関数
SELECT column1の、COLUMN2
TABLE1 FROM
WHEREのSoundex(COLUMN1)=のSoundex( 'Y嘘')。
出力:
column1のCOLUMN2
株式会社Y・リー
日付と時刻の操作関数
#使用日()関数
SELECT column1の、COLUMN2
TABLE1 FROM
WHERE日(coulmn_date)= '2019年9月2日';
#Date()関数は、日付と時刻、日付を返します
#それは今までにcolumn_dateかもしれないが、しかし、最善の利用日()関数
#Timeも同様の
#日付フォーマット:YYYY-MM-DD
#時間形式:00:00:00
#下の2019年9月のデータを取得します
SELECT column1の、COLUMN2
TABLE1 FROM
WHERE年(coulmn_date)= '2019' AND月(column_date)= '9'BETWEEN '2019年9月1日' AND '2019年9月30日';
#または下記にかかわらず、何日か月あたりの
SELECT column1の、COLUMN2
TABLE1 FROM
年(coulmn_date)は、2019年と月(column_date)= 9 = WHERE。