MySQLの - 場合は、その後、1次元テーブルを持つ文は、2次元のテーブルになり...文で、もし
データベースの詳細については、~~注意ヨーヨーを追加してください。:ブロガーのための接触ガボール主な民間の手紙またはお問い合わせください
QQ:3327908431
マイクロ手紙:ZDSL1542334210を
はじめに:虎などの操作が激しいのMySQLのシリーズ、コード、明確で理解しやすい、シンプルな構造は、その時々我々は裁判官に必要な、あなたはif文を使用する必要があります。MySQLの内部では、その後...、ある裁判官への道は、そこにあります。勝つための具体的な例。**
1、if文の構文
裁判官は、不確実なデータ型である文、数値またはテキストのいずれかのタイプを判断できる場合には、プログラミングの様々な関与することになることは間違いないが、あるブール、trueまたはfalseを返します。だから、MySQLは例外ではない、とその具体的な構文は次のとおりです。
select <内容> if(<条件1>,<满足1>,if(<条件2>,<满足2>,if(<条件3>,<满足3>,....))) from <表名>;
2、ケース... then文と文法
もちろん、私たちが見ることができ、その後、文とif文は次のようにしている、と彼らは、特定の構文の詳細を決定することができます...場合は、次のとおりです。
select <内容>,case
when <条件1> then <满足1>
when <条件2> then <满足2>....
else <满足n>
end from <表名>;
図3に示すように、一次元の表では、2次元テーブルとなります
一次元、二次元テーブルへのクエリの結果に、我々はここで見つける複数のリネームの使用が法である、それがして、グループと組み合わせる必要があり、具体的な例を参照して、最後の2つの例は、説明少し抽象的、私なりそれは明確にすることができます。カブスは私の鏡を持って、私はああ...まったく厄介な毛がありません参照してください!グッド!いいえ混乱、我々は継続しません...
図4に示すように、テーブルを作成します
テストテーブルテックスを作成します。
create table tex(
s_id varchar(6),c_id varchar(6),score int);
insert into tex values
("0001","01",67),
("0001","02",99),
("0002","02",88),
("0003","03",100);
学生スコアリング形のスコアを作成します。
create table scores (s_id varchar(5),
c_id varchar(3),score float);
insert into scores values
("001","01",135),
("005","01",120),
("003","01",110),
("002","01",90),
("005","02",140),
("001","02",125.5),
("004","02",100),
("006","02",90),
("002","03",102),
("005","03",100.6),
("001","03",100),
("003","03",95.6),
("004","03",83),
("003","02",80),
("006","03",79.5);
5、セクションのタイトル
トピック1:if文での評価(120,100,90に応じた分類)をスコアに
「評価は」評価スケールの名前が変更されることを意味します。
select *,
if(score >=120,"优秀",
if(score >=100,"良好",
if(score>=90,"及格","不及格")))等级
from scores;
# 答案
001 01 135 优秀
005 01 120 优秀
003 01 110 良好
002 01 90 及格
005 02 140 优秀
...
トピック2:ケースと、その後の評価(120,100,90に従って分類)を得点
select *,
case
when score >=120 then "优秀"
when score >=100 then "良好"
when score >=90 then "及格"
else "不及格"
end 等级
from scores;
# 答案
001 01 135 优秀
005 01 120 优秀
003 01 110 良好
002 01 90 及格
005 02 140 优秀
...
トピック3:女性、男性およびその他の変更について001002003生徒の性別の変更など[if文]
select *, if (s_id in(001,002,003),'女','男')new_sex from stu;
# 答案
001 李华 男 23 1996-8-16 女
002 王二 男 24 1997-3-16 女
003 赵敏 女 23 1990-5-26 女
004 张莹莹 女 22 1995-2-16 男
005 朱亚军 男 25 1999-8-16 男
006 马云 男 28 1993-12-16 男
007 走走走 男 105 1996-8-16 男
トピック4:[とき...その後]に女性、男性とその他の修正のための001002003生徒の性別の変更
select *,
case
when s_id in(001,002,003) then '女'
else '男'
end new_sex
from stu;
トピック5:男性と女性の数90件の問い合わせ、風景の要件
select sum(s_sex="男") 男,sum(s_sex="女") 女 from
stu where year(s_bothday)>=1990;
# 答案
男 女
5 2
トピック6:2次元テーブルテックスにテスト形式
select s_id ,
sum((c_id=01)*score)'01',
sum((c_id=02)*score)'02',
sum((c_id=03)*score)'03'
from tex
group by s_id;
# 答案:
s_id 01 02 03
0001 67 99 0
0002 0 88 0
0003 0 0 100
ここで、インデックスは、すべて「01」が加算され、原稿台上の単一の行合計を記録するような「01」のような条件を満足和満たしていない求め、それぞれについて、列に加算されます学生はこのコースを選択しなかったビットは、値が0であればレコードは、それがない場合は、結果は1つのレコードだけである場合は、別のことで、グループを使用する必要があり、一部のみです。基づいて、私たちの目標以上を達成しました。
トピック7:2次元テーブルにスコア
select s_id,
sum((c_id=01)*score) "01",
sum((c_id=02)*score) "02",
sum((c_id=03)*score) "03"
from scores
group by s_id;
# 答案
s_id 01 02 03
001 135 125.5 100
002 90 0 102
003 110 80 95.5999984741211
004 0 100 83
005 120 140 100.5999984741211
006 0 90 79.5
6、紙の卵の終わり - 簡単な瞬間
私たちは皆、私は時々彼のガールフレンドに遊んで、彼は前のカードをプレイするのが好きウィニーという名前の友人を持っているが忘れてしまったことを知って、彼と私たちはカードをプレイするには、この時間明るい兄弟は急いで来て、クマに言ったら、「あなたが持っています!!思考カードマイルキスあなたの妻とあなたの親友が「ウィニーは彼のカードを入れてすぐに、聞いて激怒したと明るい弟を与えたが、言った:」!私はあなたが最初に私の「オーバーのためのいくつかを打つ表示されますしばらくは、戻ってきた、と明るい兄弟を軽蔑するために言った:私はその男を知らない、あなたは私がプレー開くカンニングしようとしている、「すべての日の大騒ぎあなたのTMを行い、私はより良い彼らは他の高速な実行、または私は人々のカブスは今結婚しているしたいので」!イニングがありません、確かに花嫁の男のガールフレンドの妻にキスです。
MySQLの知識についてもっと学ぶためにリラックスした瞬間のよ〜利息 - 今日はヨーヨー//各記事の最後の卵を持って、ここで終了します!見ていただきありがとうございます、私はJetuserデータでした
リンク:[https://blog.csdn.net/L1542334210]
CSND:L1542334210
私はあなたのすべての成功を祈って!家族で楽しみます!