SQLプログラミングの概要

1.検索

*ウェブサイトSELECT FROM;
SELECT DISTINCT国ウェブサイトから、選択//唯一の差分値
SELECTを*ウェブサイトから国=「CN」;
へ=は等しい
<>等しくありません。NOTE :! SQLのいくつかのバージョンでは、オペレータは、=のように書くことができる
よりも>大きい
<より小さい
> =より大きいか等しい
<=以下で
ある範囲内BETWEEN
LIKEパターン検索
列の複数のINが可能指定を値

AND OR
アレクサDESC BYウェブサイトORDER SELECT * FROM。
国、アレクサBYウェブサイトORDER SELECT * FROM。

2、挿入

ウェブサイト(名前、URL、アレクサ、国)。INSERT INTO
VALUES( '百度'、 'httpsを://www.baidu.com/','4','CN');


3、更新
UPDATEウェブサイト
= '5000'、国= "USA" SET ALEXA
名= '初心者チュートリアルを';


図4は、削除
ウェブサイトからDELETE
名=「Baiduの」AND国=「CN」;


5は、ルックアップは属性
SELECT * 2は、ウェブサイトからLIMIT 2をOFFSET;
SELECT *ウェブサイトからWHERE LIKE「%%のOOの」name;
1文字以上の%の交換を
_代わる唯一の文字
[CHARLIST】任意の単一の文字列の文字
[^ CHARLIST]または[CHARLIST]は任意の単一文字列の文字ではありません!
SELECT * WHERE名REGEXP、ウェブサイトから「^ [AH]」;

( 'グーグル'、 '菜鸟教程')のWebのサイト名SELECT * FROM。
ウェブサイトWHERE(1〜20のアレクサ)と国NOT IN( 'USA'、 'IND')SELECT * FROM。
nは、ウェブサイトからC AS国として名を選択します。
SELECT w.name、w.url、a.count、Wなどのウェブサイトからa.date、WHERE a.site_id = w.idとw.name = "菜鸟教程" ASのaccess_log。


接続された図6に示すように、
内部結合表は、少なくとも一つのマッチラインが返された場合
LEFT JOINは:右テーブルに一致がない場合であっても、表には、左からすべての行を返す
RIGHT JOIN:左テーブル内の一致がない場合でも、テーブルに戻りを右からすべての行は
FULL JOINを:限り、テーブル、戻りラインが一致するよう

UNION演算結果は、SELECT文の2つ以上を組み合わせるための演算子を設定します。
国のウェブサイトからSELECT
UNION
SELECT国のアプリFROM
国BY ORDER。

ウェブサイトから国を選択
UNION ALL
アプリの中から選択国
の国BY ORDER。

7、SQL関数
AVG()は-の平均返し
; - )(COUNTをNUMS AS access_logの中から選択(DISTINCT SITE_ID)COUNTの行数を返し
た値の最初のレコードを返す- FIRSTは()
)(LAST -最後に記録された値を返します
MAX() -の最大値を返し
最小値を返し- MIN()は
()合計-合計を返し

UCASE() -フィールドは、大文字に変換される
フィールドは小文字に変換される( - )LCASE
)MIDを( - MySQLを使用し、テキストフィールドから文字を抽出する
テキストから- SUBSTRING(フィールド、1、終了)文字フィールドを抽出
LENを() -テキストフィールドの長さは返し
ROUNDは() -は数値フィールドの小数点以下の桁数を指定して丸め
NOWは() -現在のシステムの日付と時刻を返します。
書式設定されたフィールド-フォーマットを()表示モード

BY GROUP
NUMS AS SELECT SITE_ID、SUM(access_log.count)
SITE_ID BY access_logの群から、

Websites.name SELECT、COUNT(access_log.aid)NUMSからaccess_logのAS
LEFTがウェブサイトJOIN
access_log.site_id = Websites.id ON
GROUP BY Websites.name;

HAVING(HAVING節は、私たちは、各グループ内のデータパケットをフィルタリングすることを可能にする)
SELECTサイト.nameの、ウェブサイトからSUM(access_log.count)NUMS AS
INNER JOINはACCESS_LOG
ON Websites.id = access_log.site_id
WHERE Websites.alexa <200である
GROUP BY Websites.name
200であるSUMをHAVING(access_log.count)>。

 

おすすめ

転載: www.cnblogs.com/share-ideas/p/11260618.html