この記事では、例を使用して MySQL プロセス関数の一般的な使用方法を説明します。ご参考までに、詳細は以下の通りです。 プロセス関数は、MySQL で比較的一般的なタイプの関数です。ユーザーはこのタイプの関数を使用して、SQL ステートメントで条件付き選択を実装し、効率を向上させることができます。 以下は条件に関連するMySQLプロセス関数の一覧です。
次の例では、従業員の分類をシミュレートします。まず、従業員の給与表を作成します。 テーブル salary(userid int, salary Decimal(9,2)) を作成します。 テストデータを挿入する 給与値に(1,1000)、(2,2000)、(3,3000)、(4,4000)、(5,5000)、(1,null)を挿入します。 データは以下のとおりです mysql> 給与から * を選択します。 +--------+---------+ | ユーザーID | 給与 | +--------+---------+ | 1 | 1000.00 | | 2 | 2000.00 | | 3 | 3000.00 | | 4 | 4000.00 | | 5 | 5000.00 | | 1 | NULL | +--------+---------+ セット内の 6 行 (0.00 秒) 次に、この表を使用して各機能の用途を紹介します。 IF(expr1, expr2, expr3) 関数: ここでは、月給が 2,000 元を超える従業員は高給と見なされ、「高」で表されます。一方、月給が 2,000 元未満の従業員は低給と見なされ、「低」で表されます。 mysql> 給与から if(salary>2000, 'high', 'low') を選択します。 +--------------------------------+ | if(給与>2000, '高', '低') | +--------------------------------+ | 低い | | 低い | | 高い | | 高い | | 高い | | 低い | +--------------------------------+ セット内の 6 行 (0.00 秒) IFNULL(expr1, expr2) 関数: この関数は、通常、NULL 値を置き換えるために使用されます。NULL 値は数値演算に参加できないことはご存じのとおりです。次のステートメントは、NULL 値を 0 に置き換えます。 mysql> 給与から ifnull(給与,0) を選択します。 +------------------+ | ifnull(給与,0) | +------------------+ | 1000.00 | | 2000.00 | | 3000.00 | | 4000.00 | | 5000.00 | | 0.00 | +------------------+ セット内の 6 行 (0.00 秒) CASE WHEN [値1] THEN [結果1]… ELSE [デフォルト] END 関数: ここで、case when..then 関数を使用して、上記の例の高給と低給の問題を解決できます。 mysql> select CASE WHEN salary<=2000 THEN 'low' else 'high' END from salary; +---------------------------------------------------+ | CASE WHEN salary<=2000 THEN 'low' else 'high' END | +---------------------------------------------------+ | 低い | | 低い | | 高い | | 高い | | 高い | | 高い | +---------------------------------------------------+ セット内の 6 行 (0.00 秒) CASE [expr] WHEN [value1] THEN[result1]… ELSE[default] END 関数: ここでは、従業員の給与を複数の状況に応じて複数のレベルに分割することもできます。次の例では、高、中、低の 3 つの状況に分割されています。同じことは、より多くの状況に分けることができます。ここでは例は挙げません。興味のある友人は自分でテストすることができます。 mysql> select CASE salary WHEN 1000 THEN 'low' when 2000 THEN 'mid' ELSE 'high' END from salary; +----------------------------------------------------------------------+ | CASE 給与 WHEN 1000 THEN 'low' when 2000 THEN 'mid' ELSE 'high' END | +----------------------------------------------------------------------+ | 低い | | 中 | | 高い | | 高い | | 高い | | 高い | +----------------------------------------------------------------------+ セット内の 6 行 (0.00 秒) MySQL 関連のコンテンツに興味のある読者は、次のトピックを確認してください: 「MySQL 共通関数の概要」、「MySQL ログ操作スキルの概要」、「MySQL トランザクション操作スキルの概要」、「MySQL ストアド プロシージャ スキルの概要」、および「MySQL データベース ロック関連スキルの概要」。 この記事が皆様のMySQLデータベース設計に役立つことを願っています。 以下もご興味があるかもしれません:
|
<<: Ubuntu 18.04 で apt-get ソースを変更する方法
>>: Vueはel-tree遅延読み込みを使用して、追加、削除、変更、クエリ機能を実装します。
この記事では、マウスの動きに追従する画像を実現するためのJavaScriptの具体的なコードを参考ま...
目次01 シナリオ分析02 操作方法03 結果分析01 シナリオ分析今日の午後、開発仲間がオンライン...
コンピュータを使用すると、システム内に大量のゴミが生成されます。最も一般的なケースは、同じファイルが...
1いくつかの一般的な文字セットMySQL で最も一般的な文字セットには、ASCII 文字セット、ラテ...
目次1. テストデータ2. ヌル値による不便3. スペース、空の値、null をどのように判断すれば...
バックエンド プログラマーとして、フロントエンドのものをいじらなければならないこともあります。そこで...
1. プリコンパイルの利点私たちは皆、プリコンパイル機能を備えた JDBC の PreparedSt...
方法1: CSSオーバーフロー省略を使用して解決する解決策は次のとおりです。 CSSコード: ディス...
1. エフェクト表示JavaScript で書かれた宇宙飛行士のウォッチフェイス。 http://x...
JSはショッピングカート内の商品の合計金額を計算して参考とします。具体的な内容は以下のとおりです。質...
1. 仮想マシンに共有フォルダを設定します。 1. 処理する仮想マシンを選択し、右クリックして設定...
よく知らないサーバーの場合や、かなり前にインストールした場所を忘れてしまった場合、構成ファイルの場所...
コンテナは Docker のもう一つの中心的な概念です。簡単に言えば、コンテナとは、独立して実行され...
目次1. 遅いところはどこですか? 2. 不要なデータをクエリしましたか? 1. 不要なレコードをク...
この記事では、CentOS 7 環境でソース コードから MySQL 5.7 をインストールする方法...