dポイントプレゼントキャンペーン実施中!

日付 内容
2006-5-10 aaa
2006-5-11 abb
2006-5-11 aaa
2006-5-12 abb

上のようなデータを複製(例:5月11日のすべてをリストにはない5月13日へ複製し下記のように)したいのですが、SQL構文で可能でしょうか?よろしくお願いします。

日付 内容
2006-5-10 aaa
2006-5-11 abb
2006-5-11 aaa
2006-5-12 abb
2006-5-13 abb
2006-5-13 aaa

A 回答 (2件)

>SQL構文で可能でしょうか?



MySQLであれば、少なくとも5.0であれば可能です。

<SQL例>
insert into tbl1
select '2006-05-13',内容 from tbl1
where 日付='2006-05-11'

最近はどうか分かりませんが、かなり昔には、「同一表に対してinsert ~ selectできない」といった制限を持つRDBMSも存在しました。
    • good
    • 0
この回答へのお礼

MYSQLのバージョン4.0.24でしたが、
上記の方法で問題ありませんでした。
ありがとうございました。

お礼日時:2007/11/28 11:49

古いMySQLでもテンポラリに一度落とせば大丈夫だと思います。



CREATE TEMPORARY TABLE `temp_tbl1`
SELECT '2006-05-13' AS `日付`,`内容` FROM `tbl1`
WHERE `日付`='2006-05-11';
INSERT INTO `tbl1`
SELECT * FROM `temp_tbl1`;
    • good
    • 0
この回答へのお礼

今回はANo.1の方の1行の方で問題ありませんでしたが、
古いテンポラリの場合はこちらを参照したいと思います。
ありがとうございました。

お礼日時:2007/11/28 11:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す