コアコード /*-------------------------------- 2つ以上のフィールドがNULLであるレコードt1を検索します。 id、id1、id2、id3、id4、id5、id6 t1 テーブルにはフィールドがあります。 ここで、id は主キーです。 1 つ以上のフィールドが NULL であるレコード ID を印刷するにはどうすればよいでしょうか? さらに、保存プロセス中にレコードを 1 つずつ順番に読み取る最も便利な方法は何ですか? 注: 主キー ID には順序がなく、文字列になる場合もあります。 -----------------------------------------*/ 存在する場合はテーブル t1 を削除します。 テーブル t1(id int、id1 int、id2 int、id3 int、id4 int、id5 int、id6 int) を作成します。 挿入t1選択 1,1,1,1,1,null,null 結合 すべて選択 2、null、null、null、1、2、3 結合すべて選択 3,1,2,3,4,5,6 すべて結合選択 4,1,2,3,4,5,null 結合すべて選択 5、null、3、4、null、null、null ; 区切り文字 $$ プロシージャ usp_c_null() を作成する 始める n_c int を宣言します。 idd int を宣言します。 curカーソルを宣言する id を選択し、case char_length(concat(ifnull(id1,'@'),ifnull(id2,'@'),ifnull(id3,'@'),ifnull(id4,'@'),ifnull(id5,'@'),ifnull(id6,'@'))) - char_length(replace(concat(ifnull(id1,'@'),ifnull(id2,'@'),ifnull(id3,'@'),ifnull(id4,'@'),ifnull(id5,'@'),ifnull(id6,'@')),'@','') ) 6 の場合、6、5 の場合、5、4 の場合、4、3 の場合、3、2 の場合、2、1 の場合、1、それ以外の場合は 0、t1 から c として終了。 見つからない close cur の終了ハンドラを宣言します。 オープンカー; 繰り返す cur を idd,n_c にフェッチします。 n_c>=2の場合 id=idd の場合、t1 から * を選択します。 終了の場合; 0 まで繰り返します。 クローズカー; 終わり ; $$ 区切り文字 ; /* +------+------+------+------+------+------+------+ | id | id1 | id2 | id3 | id4 | id5 | id6 | +------+------+------+------+------+------+------+ | 1 | 1 | 1 | 1 | 1 | NULL | NULL | +------+------+------+------+------+------+------+ セット内の1行(0.10秒) +------+------+------+------+------+------+------+ | id | id1 | id2 | id3 | id4 | id5 | id6 | +------+------+------+------+------+------+------+ | 2 | NULL | NULL | NULL | 1 | 2 | 3 | +------+------+------+------+------+------+------+ セット内1列(0.14秒) +------+------+------+------+------+------+------+ | id | id1 | id2 | id3 | id4 | id5 | id6 | +------+------+------+------+------+------+------+ | 5 | NULL | 3 | 4 | NULL | NULL | NULL | +------+------+------+------+------+------+------+ セット内1列(0.17秒) */ 以下もご興味があるかもしれません:
|
<<: JavaScript の for ループと二重 for ループの詳細な説明
>>: 一般的なDocker Composeコマンドの詳細な説明
シナリオ: docker で tomcat を起動すると (Alibaba Cloud からダウンロ...
環境説明サーバーシステム: Ubuntu 18.04 64ビットnginx: 1.14この記事では主...
mysql のデフォルトのストレージ ディレクトリは/var/lib/mysql/です。以下は、デフ...
目次1. MySQL msiバージョンをダウンロードする2. インストール3. 環境変数を設定する1...
今回はHTML+CSSレイアウトを使用して、TG-vision Shuanghui Mediaのホー...
参照ドキュメント公式 Docker インストール ドキュメント: https://docs.dock...
まず、docker に openssh-server をインストールします。インストールが完了したら...
目次Matlab セントロイドアルゴリズムMatlab はクローズドな商用ソフトウェアであり、米国政...
2級コンピュータ試験のMySQL知識ポイントの基礎、一般的なMYSQLコマンドは次のとおりです。よく...
1. モバイル端末がリストスライドを処理するとき、WeChat には下部にページに戻るボタンが組み...
crontabをインストールするyum install crontabs CentOS 7が付属して...
コラムを更新してからどれくらい経ったでしょうか?半年ですか?今年の後半は、まさに離陸、つまり文字通り...
この記事では、Linux環境でのmysql5.6.24自動インストールスクリプトコードを参考までに共...
私はしばらく MGR と連絡を取り合ってきました。MySQL 8.0.23 の登場により、MySQL...
まず効果を見てみましょう: html <a href="#"> &l...