2

添付の例を実行すると、列 ID とデータ型が bigint(295) のテーブルが作成されます。これを int(11) として定義したいと思います。より複雑なクエリ (グループ concat から ID を取得しました) では、int ではなくテキストを取得しています。

テーブルの作成でデータ型をmysqlで選択するように指定する方法は?

DROP TABLE IF EXISTS some_table;
CREATE TABLE IF NOT EXISTS some_table AS (
SELECT
CONVERT("123,456,789,987,654,321,741,852,963,147,258,369,123,456,789,987,654,321,741,852,963,147,258,369
  ,2123,456,789,987,654,321,741,852,963,147,258,369,123,456,789,987,654,321,741,852,963,147,258,369
  ,3123,456,789,987,654,321,741,852,963,147,258,369,123,456,789,987,654,321,741,852,963,147,258,369"
, SIGNED INTEGER) AS id);
4

1 に答える 1

2

私はそれを行う直接的な方法を見つけることができません。テーブルを変更して解決してください。うまくいきました。おそらくもっと良い解決策があります。

DROP TABLE IF EXISTS some_table;
CREATE TABLE IF NOT EXISTS some_table AS (
SELECT
CONVERT("123,456,789,987,654,321,741,852,963,147,258,369,123,456,789,987,654,321,741,852,963,147,258,369
  ,2123,456,789,987,654,321,741,852,963,147,258,369,123,456,789,987,654,321,741,852,963,147,258,369
  ,3123,456,789,987,654,321,741,852,963,147,258,369,123,456,789,987,654,321,741,852,963,147,258,369"
, SIGNED INTEGER) AS id);

ALTER TABLE some_table CHANGE id id INT( 11 ) NULL DEFAULT NULL ;
于 2012-08-19T11:46:46.970 に答える