set @a = "1";
のような変数を定義するとします。 @aが文字列であることをどのように確認できますか?MySQLの変数の型を取得
答えて
MySQLの変数のタイプを判別することはできません。 MySQLのマニュアルにキャストについて
@a = CAST(123 AS CHAR);
詳しい情報と例:
MySQLの変数の型を決定できます。下の私の答えを見てください。 – 5lava
、あなたは簡単にあなたが望む形であなたの変数をCAST()
することができます
MySQLの変数のタイプを判別できます。変数を選択して表を作成し、列のタイプを確認してください。
set @a:="1"; -- your variable
drop temporary table if exists foo;
create temporary table foo select @a; -- dirty magic
desc foo;
+-------+----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+----------+------+-----+---------+-------+
| @a | longtext | YES | | NULL | |
+-------+----------+------+-----+---------+-------+
これは、正しいデータ型を返すようではありません。 – Pacerier
_そうじゃないですか?_もっと具体的に教えてください。 'Type'カラムは内部的にMySQL **で表現されているように変数型を反映します。最小/最適である必要はありません。例えば、 'longtext'は私の例のように魔法のように' varchar(1) 'や' tinyint(1) 'になることはありません。 – 5lava
これは、[別のスレッド](http://dba.stackexchange.com/q/57363/9405)で言及されているように盗聴されているようです...返された型テンポラリテーブル内の変数は**同じ型**です。 'create table foo select @ a'を実行したときに何らかの暗黙の変換が行われたようです...単純な整数の場合はlonglong、単純なビットフィールドの場合はlongblobを返します。 – Pacerier
MySqlでは、変数のデータ型を特定できません。しかしcastを使用して文字列のみと整数を識別するための方法があります:
set @a = "11";
SELECT CAST(@a AS SIGNED); // Output : 11
set @a = "text";
SELECT CAST(@a AS SIGNED); // Output : 0
set @a = "121212";
SELECT CAST(@a AS SIGNED); // Output : 121212
set @a = "Mysql is open source";
SELECT CAST(@a AS SIGNED); // Output : 0
- 1. MySQLのPHP変数を取得する
- 2. データ型変数の中の値を取得するには?
- 3. スイフトで変数の型を取得する方法
- 4. さまざまな変数の型を取得する
- 5. 変数の型を取得する方法
- 6. Kotlinで変数の型を取得する
- 7. Cコードで変数の型を取得する
- 8. elmの関数の型シグニチャの取得
- 9. 型安全変換の取得
- 10. mysql変数の位置と方向の取得
- 11. Kotlinの関数型の変数からKFunctionを取得できますか?
- 12. mysqlクエリ自体の行数を取得
- 13. MySQLデータベースの項目数を取得
- 14. MySQL関数の構文エラーの取得
- 15. MySQLはデータ型== Xの列名を取得します
- 16. mysqlの列データ型と値を取得する方法
- 17. python ctypes:ポインター変数からポインティング型を取得
- 18. オブジェクト型環境変数を取得する方法は?
- 19. Sqlのtime型の2つの変数の違いを取得する
- 20. 複数の行を取得し、変数に格納します。 MysqlとPHP
- 21. PDOを使用してMySQLから数値型を取得するには?
- 22. オブジェクトの関数演算子の引数型を取得する
- 23. mySqlからajax経由でjQueryに変数を取得する
- 24. 毎秒MySQLステータス変数を取得する方法は?
- 25. MySQLデータベーステーブルからJavaScript変数を取得する方法は?
- 26. PHP変数にmysql出力を取得する方法は?
- 27. のMySQL関数型キャストエラー
- 28. 整数変数の値を取得
- 29. Java:Calendar変数の秒数を取得
- 30. ローカル変数の取得
私はここにあなたのアプローチを得ることはありません。私はあなたがmysqlで変数型を取得できるとは思わないが、私は間違っている可能性があります – marcgg
@marcgg、私はあなたが彼が何を意味するのかと思います。 – Pacerier
変数は特定の型で前に宣言しなければならないので、@aは文字列であることをすでに知っているはずです。しかし明らかにここではさらに進んでいます。あなたはこれで何を達成しようとしていますか? –