1. はじめに
フィールド計算では、次の 2 つのタイプがよく使用されます。
2. 本文
2.1 フィールドの連結ユーザー テーブルを準備し、次のようにいくつかのレコードを挿入します。 名前を設定します utf8mb4; FOREIGN_KEY_CHECKS = 0 を設定します。 -- ---------------------------- -- ユーザー用テーブル構造 -- ---------------------------- `user` が存在する場合はテーブルを削除します。 テーブル `user` を作成します ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主キー', `name` varchar(255) 文字セット utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'ユーザー名', `nation` varchar(255) 文字セット utf8 照合 utf8_general_ci NULL デフォルト NULL コメント 'Ethnicity', BTREE を使用した主キー (`id`) ) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- ユーザーの記録 -- ---------------------------- INSERT INTO `user` VALUES (1, '李子八', '汉族'); INSERT INTO `user` VALUES (2, '张三', '慧族'); INSERT INTO `user` VALUES (3, '李四', 'Uyghur'); INSERT INTO `user` VALUES (4, '王五', '蒙古'); FOREIGN_KEY_CHECKS = 1 を設定します。 必要: ユーザーの名前と民族の組み合わせ情報を取得します 声明: mysql> user から、name, '(',nation, ')') を選択します。 +---------------------------------+ | concat(名前、'('、国、')') | +---------------------------------+ | 李子巴(漢民族)| | 張三(ホイ) | | 李斯(ウイグル語) | | 王武(モンゴル語)| +---------------------------------+ 分析: ここでは 結合後のフィールド名はどうなりますか? 注意深い友人は、結合後のフィールド名が mysql> user から user_message として concat(name, '(',nation, ')') を選択します。 +------------------+ | ユーザーメッセージ | +------------------+ | 李子巴(漢民族)| | 張三(ホイ) | | 李斯(ウイグル語) | | 王武(モンゴル語)| +------------------+ エイリアスの使用方法は、 2.2 フィールドでの算術計算の実行フィールドを結合する場合、単に文字列を連結する以上の処理を実行することがよくあります。フィールド間の算術計算が必要になる場合があります。この場合、 MySQL は、次のように加算、減算、乗算、除算の演算子を提供します。
製品テーブルを準備し、次のようにいくつかのレコードを挿入します。 名前を設定します utf8mb4; FOREIGN_KEY_CHECKS = 0 を設定します。 -- ---------------------------- -- 製品のテーブル構造 -- ---------------------------- `product` が存在する場合はテーブルを削除します。 テーブル「product」を作成します( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主キー', `product_name` varchar(255) 文字セット utf8 COLLATE utf8_general_ci NOT NULL COMMENT '製品名', `price` 10進数(10, 2) UNSIGNED NOT NULL COMMENT '製品価格', `number` int(11) NOT NULL COMMENT '製品数量', BTREE を使用した主キー (`id`) ) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- 製品の記録 -- ---------------------------- `product` に VALUES (1, 'Apple iPhone 13 (A2634)', 6799.00, 22) を挿入します。 `product` VALUES (2, 'HUAWEI P50 Pro', 6488.00, 88) に INSERT INTO します。 `product` VALUES (3, 'MIX4', 4999.00, 30) に INSERT します。 `product` VALUES (4, 'OPPO Find X3', 3999.00, 15) に INSERT INTO します。 `product` VALUES (5, 'vivo X70 Pro+', 5999.00, 27) に INSERT INTO します。 FOREIGN_KEY_CHECKS = 1 を設定します。 必要: 現在の在庫商品の合計金額を照会する 声明: mysql> product_name を選択し、(price * number) を gross_value として product から連結します。 +-------------------------+--------------+ | 商品名 | 総額 | +-------------------------+--------------+ | Apple iPhone 13 (A2634) | 149578.00 | | HUAWEI P50 Pro | 570944.00 | | ミックス4 | 149970.00 | | OPPO Find X3 | 59985.00 | | ヴィヴォ X70 Pro+ | 161973.00 | +-------------------------+--------------+ 演算子順序の問題: 例: mysql> select concat(12 - 3 * 4); +--------------------+ | 連結(12 - 3 * 4) | +--------------------+ | 0 | +--------------------+ セット内の 1 行 (0.00 秒) mysql> select concat((12 - 3) * 4); +----------------------+ | 連結((12 - 3) * 4) | +----------------------+ | 36 | +----------------------+ セット内の 1 行 (0.00 秒) mysql> select concat(12 / 0); +----------------+ | 連結(12 / 0) | +----------------+ | NULL | +----------------+ セットに 1 行、警告 1 件 (0.00 秒) これで、MySQL の 以下もご興味があるかもしれません:
|
<<: Bootstrap 3.0 学習ノートのページレイアウト
>>: Ubuntuはカーネルモジュールをコンパイルし、その内容はシステムログに反映されます。
Docker では、ポート マッピングを使用して、Docker コンテナーのサービスをホスト マシン...
最近のプロジェクトでは、テキストを垂直に揃えたいと考え、CSS の writing-mode プロパ...
yumコマンドYum (フルネームは Yellow dog Updater, Modified) ...
1. クラスター化インデックステーブル データはインデックスの順序で保存されます。つまり、インデック...
あなたが作成するものこの新しいチュートリアルでは、CSS と JavaScript を使用して、レス...
効果画像: 実装コード: <テンプレート> <div id="map&q...
システム パフォーマンスの専門家である Brendan D. Gregg 氏は、LinuxCon N...
スタンドアロンの hbase について、まずは説明しましょう。 Dockerをインストールするまず ...
TypeScript バンドルwebpack 統合通常、実際の開発では、ビルド ツールを使用してコー...
実際、この効果を実現するのは非常に簡単で、この効果は特殊効果と呼ぶことすらできません。次のコードを ...
Webページを作るときに、区切り線hrを使うことがありますが、IE6やIE7で表示するのは非常に苦痛...
問題の説明:エラーメッセージ:原因: com.mysql.jdbc.PacketTooBigExce...
問題の説明MySQL の起動時にエラーが報告されます。エラー ログを確認してください。 [エラー] ...
ミニネットMininet は軽量のソフトウェア定義ネットワークおよびテスト プラットフォームです。軽...
他の人から「つまらない」とか「時代遅れ」というフィードバックを受けて、それを変更しようとしたのに、更...