まずデータ テーブルを作成しましょう。 使用テスト; テーブル「従業員」を作成します( emp_no int 符号なし、 従業員名varchar(30), emp_sex varchar(3)、 emp_age tinyint 符号なし、 サルダブル、 履歴 日時 ); 従業員の値に挿入(1, '张三', '男', 18, 5000, '2012-04-23')、 (2, '李思', '男性', 27, 4500, '2013-05-23'), (3, '王五', '男', 23, 4700, '2012-04-21'), (4, 'Zilong', '男性', 19, 3800, '2011-03-04'), (5, '李白', '男性', 15, 6200, '2015-09-09'), (6, '劉備', '男性', 28, 2500, '2016-02-11'), (7, '呂布', '男性', 21, 6000, '2010-10-18'), (8, 'Shangxiang', '女性', 16, 4500, '2011-09-26'), (9, '小喬', '女性', 15, null, '2013-07-05'), (10, '大乔', '女', 16, 5000, '2017-09-01'); よく使用される演算子: sal = 3800 の場合、従業員から * を選択します。 select * from employee where sal = null; --ここでは null データは見つかりません 2: 等しい ( <=> ) 従業員から*を選択します。ここで、sal <=> 3800; select * from employee where sal <=> null; --ここでnullのデータを照会できます 3: 判断です(null) sal が null である employee から * を選択します。 sal が null でない employee から * を選択します。 4: isnull() を使用して null 値を判定することもできます。 従業員からisnull(sal)となる*を選択します。 !isnull(sal) である従業員から * を選択します。 5: 最小値と最大値の間 ps: これは閉じた区間です
6: 範囲外
7: およびおよびまたは 給与が 4500 から 5000 の間ではない、または給与が null である従業員から * を選択します。 sal = 4500 かつ emp_sex = '女' の場合、従業員から * を選択します。 8: より小さい (<)、より大きい (>)、以下 (<=)、以上 (>=) ****************************************************************************************************************************************** 数学関数 select rand() from Dual; --dual は疑似テーブルです select 1+1 from Dual; select rand(); --省略可能 2: least(value1, value2, ...) は最小値を返します 最小(54,76,4,65,76,87,87,56,65,654,45,23,1,76)を選択します。 select least(54,76,4,65,76,87,87,56,65,654,45,23,1,76) as min_value; --列名には別名を付けることができます 3: greatest(value1, value2, ...)は最大値を返します
4: round(M, D); M の丸められた値を返します。D は小数点以下の桁数を示します。デフォルト値は 0 です。 round(1.69)を選択します。 round(1.69, 1)を選択します。 5: abs() 絶対値 5~10を選択 abs(5-10)を選択します。 ****************************************************************************************************************************************** 要約機能 1: 平均(); 給与が 6000 以上である従業員から * を選択します。 sal >= 6000 の従業員から avg(sal) を選択します。 2: カウント() 従業員からcount(*)を選択します。 従業員からcount(emp_name)を選択します。 select count(sal) from employee; --print 9. ここではnull値は無視されます。select count(*) from employee where sal >= 4000; sal <= 4000 または sal が null の場合、employee から count(*) を選択します。 3: 合計() 4: 最小値() 5: 最大() ****************************************************************************************************************************************** 日付関数 1: 現在の日付と時刻を取得する now()、sysdate()、current_timestamp() を選択します。 now(6)、sysdate(6)、current_timestamp(6)を選択します。 ps: now()、current_timestamp(); 違いはありません。SQL の実行が開始された時刻を示します。sysdate() はこの関数の開始時刻を示します。 2: 現在の日付を取得する
3: 現在の時刻を取得する
4: 日付追加操作 date_add 従業員から history、date_add(history、interval '1 12:10' day_minute) を選択します。--date_add(history、interval '1 12:10' day_minute) 従業員から history、date_add(history、interval '1-1' year_month) を選択します。--date_add(history、interval '1-1' year_month) 従業員から history、date_add(history、interval '1' 秒) を選択します。--date_add(history、interval '1' 秒) 5: 日付減算演算 data_sub 6: 日付差を計算する
7: 日付の指定された部分を取得する(日付を指定された形式に変換する)date_format() 従業員から history、date_format(history、'%Y 年 %m 月 %d 数値') を選択します。 従業員から history, date_format(history, '%d号') を選択します。 employee から history, date_format(history, '%Y 年 %m 月 %d 日 %H 時間 %i 分 %s 秒') を選択します。 8: 日付の曜日を計算する
9: 中国語の日付文字列変換 date str_to_date() insert into employee values(11, '张飞', '男', 22, 3000, '2017年02月01号'); --エラー insert into employee values(11, '张飞', '男', 22, 3000, str_to_date('2017年02月01号', '%Y年%m月%d号%H時%i分钟%s秒')); 従業員の値に挿入(12, '次男', '男性', 22, 3000, str_to_date('2017-02-01 23:02:02', '%Y 年 %m 月 %d 日 %H 時間 %i 分 %s 秒')); 文字列関数 1: left(str, len)は文字列strの左端からlen文字を返します。 2: 長さ() 3: lower(str)は小文字の文字列strを返します。 4: substring() は部分文字列を受け取り、2 番目のパラメータはインターセプトの開始位置、3 番目のパラメータはインターセプトする長さです。 5: concat() 文字列連結
6: 置き換える
以下もご興味があるかもしれません:
|
<<: Linux でファイル内の特定の文字の数を数える方法
>>: JavaScriptのポイントごとのシリーズでこれは何ですか
この記事では、オンラインチャットを実現するためのVue + sshフレームワークの具体的なコードを参...
最近の問題としては、次のような現象があります。システムには、docker run コマンドを継続的に...
この記事では、主に 2 種類の下線の動的効果について説明します。1 つ目は、ホバーすると X 軸が内...
序文CentOS に MySQL をインストールして設定する手順は次のとおりです。文章yumソースか...
コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBLIC "...
1. まず、次のパスに従って対応するフォルダを作成します。 ローカルのdockerでmysqlを実行...
目次序文Linux アプリケーション実行中に開いているファイルが多すぎる問題の分析と解決Linux ...
序文これまでにも、一部の SQL ステートメントを不適切に使用すると MySQL インデックスが失敗...
[LeetCode] 177. 最も高い給与従業員テーブルからn番目に高い給与を取得する SQL ...
この記事では、JavaScriptキャンバスで流星の特殊効果を表示するための具体的なコードを参考まで...
入力タグタイプがファイルで、タグ内にaccpet="image/*"属性が設定さ...
目次概要解決策 1: クロージャ解決策2: 構造を分割する解決策3:解決策4: setTimeout...
1. Linuxのインストール(rootユーザー操作) 1. vncserver をインストールしま...
最近MySQLデータベースのバージョンを変更する必要があり、それを記録するために記事を書きます1. ...
ウェブサイトのレイアウトの多様化は、当社のフロントエンドの得意分野です。最近、UC ブラウザのデフォ...