mysql データ型変換の実装

mysql データ型変換の実装

1. 問題

下図のような表があり、結果値がreference_high値より大きいデータを見つける必要があります。

次に、次のSQLクエリを書きました。

SELECT i.result,i.reference_high FROM report_item i
LEFT JOIN レポート r ON r.id=i.report_id 
r.org_id=54 かつ r.report_status=1 の場合
r.add_date が '2020-12-01' から '2020-12-28' の間 
AND i.reference_high<>'' AND i.result<>''
かつ、i.result > i.reference_high ;

実行して結果を表示します

クエリ結果が期待どおりではありません。クエリ条件 i.result > i.reference_high を満たさないデータが多数あります。

2. ポジショニング

テーブルを作成するための SQL ステートメントを確認すると、result と reference_high は numeric 型ではなく varchar 型であるため、クエリ結果が期待どおりにならないことがわかりました。

3. 解決策

方法1: テーブルフィールドのデータ型を数値に変更する

ただし、ビジネスでの使用シナリオを考慮すると、両方のフィールドに数値以外の入力がある可能性があるため、これは実現可能ではありません。

方法2: クエリステートメントを変更し、データ型を数値型に変換する

上記のデータを例に挙げると

1. 暗黙的な変換: 比較する文字列に 0 を追加して比較します。データは正常にフィルタリングされます。

2. 表示変換

(1)convert関数を使用する:文字列を浮動小数点数に変換し、比較すると、データが正常にフィルタリングされます。

(2)キャスト関数を使う:convert関数とほぼ同じ

これで、MySQL データ型変換の実装に関するこの記事は終了です。MySQL データ型変換に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySql データ型チュートリアル例の詳細な説明
  • MySQL 5.7 共通データ型
  • MySQLはIDに適切なデータ型を選択します
  • MySQL データ型の選択原則
  • mysql 10進データ型変換の実装
  • MySQL データ型 DECIMAL の使用方法の詳細な説明
  • MySQL の 10 進数データ型の小数点埋め込み問題の詳細な説明
  • MySQL データ型の詳細

<<:  ethers.js を使用して Solidity スマート コントラクトをデプロイする方法

>>:  CSS でフロートをクリアするための完全ガイド (要約)

推薦する

MySQLでクエリキャッシュを実行する方法と失敗を解決する方法

関数を使用する前にパラメータのプロパティを理解して、関数の使い方をより深く理解する必要があることは誰...

CPU、マシンモデル、メモリなどの情報を表示するLinuxシステム

システムメンテナンス中は、いつでも CPU 使用率を確認し、対応する情報に基づいてシステムの状態を分...

html mailto(メール)の実用化について

ご存知のとおり、mailto は Web デザインと制作において非常に実用的な HTML タグです。...

XHTML の一般的なタグ

XHTML タグとは何ですか? XHTML タグ要素は、XHTML ドキュメントの基本的なコンポーネ...

Vueは3階層メニューを再帰的に実装する

この記事の例では、3階層メニューを再帰的に実装するVueの具体的なコードを参考までに共有しています。...

JavaScriptとTypeScriptの関係

目次1. JavaScript とは何ですか? 2. JavaScript は何に使用されますか? ...

React Nativeでシンプルなゲームエンジンを作る

目次導入始めるReact Nativeゲームエンジンの簡単な紹介React Nativeでスネークゲ...

Tomcat を IDEA にダウンロード、インストール、デプロイするチュートリアル (IDEA の 2 つのホット デプロイ設定方法付き)

目次Tomcat ダウンロードチュートリアルTomcat インストールチュートリアルTomcat の...

vue3で注意すべき2つのポイントを詳しく解説:セットアップ

目次vue2の場合vue3ではセットアップに関する注意事項セットアップライフサイクルは、before...

ブラウザの互換モードでボタン内のテキストが垂直方向に中央揃えにならない問題について簡単に説明します。

XML/HTML コードコンテンツをクリップボードにコピー<ボタンスタイル= "カ...

HTML検証 HTML検証

HTML 検証はHTML 検証を指します。これは、HTML ドキュメントを分析し、標準の HTML ...

MySQLは数百万のシミュレーションデータ操作コードを自動的に挿入します

私はデータベースツールとして Navicat を使用しています。他のものも同様です。 1. Navi...

vmware14Pro で Ubuntu システム インターフェイスが小さすぎる問題の解決方法の詳細な説明

1. 動作環境vmware14proウブントゥ 16.04LTS 2. 問題の説明vmware14P...

さまざまなMySQLインデックスの使用方法の詳細な説明

1. 遅いクエリログ1.1 MySQL ログの種類ログは、データベースの操作や、ユーザーがデータベー...