Mysql 通过日期插入数据&;从一张桌子到另一张桌子的时间

Mysql 通过日期插入数据&;从一张桌子到另一张桌子的时间,mysql,sql,Mysql,Sql,我有以下疑问, INSERT INTO Table[B] SELECT * FROM Table[A] WHERE (date between '2006-03-01 00:00:00' and '2006-05-31 23:59:59' and hour(date) between 5pm and 9am ); 但它不起作用 实际上,我想把时间从下午5点到上午9点的值从A表插入到B表 有什么解决办法吗 我希望这样: INSERT INTO TableB (col1, col2, . . .)

我有以下疑问,

INSERT INTO Table[B] SELECT * FROM Table[A] WHERE (date between '2006-03-01 00:00:00' and '2006-05-31 23:59:59' and hour(date) between 5pm and 9am );
但它不起作用

实际上,我想把时间从下午5点到上午9点的值从A表插入到B表


有什么解决办法吗

我希望这样:

INSERT INTO TableB (col1, col2, . . .)
    SELECT col1, col2, . . .
    FROM TableA
    WHERE date >= '2006-03-01' AND date < '2006-06-01' AND
          (hour(date) < 9 OR hour(date) > 17);
插入到表B中(第1列、第2列,…)
选择col1,col2。
从表格
其中日期>='2006-03-01'和日期<'2006-06-01'和
(小时(日期)<9或小时(日期)>17);
注:

  • 执行
    insert
    时显式列出列
  • 明确列出值的来源列

  • 使用
    =
    可以简化日期比较。由于不清楚,请再添加一些示例,谢谢。我有一个表。它有许多记录,也有日期和时间列。我创建了一个与表[a]类似的表[B]。实际上我想从下午5:00到早上9:00把这些记录从表[A]复制到表[B]谢谢你的好意先生,