怎么样能实现在一个数据库里选择性地从某个表里插些数据到另一个表???比如说有个图书馆的数据库...里面有个表叫resource记录了图书管的资源,有些是独立资源,有些独立资源被打包成package,作为一个新的资源(另外有个package表连接在资源表上,记录了每个包里有哪些独立资源.).然后有个人借了个package.记录在一个叫booking 的表里.有了一个booking _id, 现在要在booked_resource表里插入相应的内容(booking _id,resource_id ,和是否是作为包被借走的.)
要怎么插记录???

解决方案 »

  1.   

    insert tb (fields list) select fields list from ta,tc,....where ..
      

  2.   

    insert tab(字段1,字段2)select 字段1,字段2 from tab2 ,tab1 where .条件了
      

  3.   

    参考一下官方文档,这是常用的SQL语句。http://dev.mysql.com/doc/refman/5.1/zh/sql-syntax.html#insert-select
    13.2.4.1. INSERT ... SELECT语法INSERT [LOW_PRIORITY | HIGH_PRIORITY] [IGNORE]
        [INTO] tbl_name [(col_name,...)]
        SELECT ...
        [ ON DUPLICATE KEY UPDATE col_name=expr, ... ]使用INSERT...SELECT,您可以快速地从一个或多个表中向一个表中插入多个行。
      

  4.   

    但是有个问题是这样的....booking里有个booking_id,而 resource里有 resource_id 要怎么样同时把booking里的booking_id和resource里resource_id 赋值给booked_reosource的 bookng_id resource_id并且给booked_reosource里的part_of_package赋值为"t"
      

  5.   

    INSERT INTO booked_reosource (bookng_id,resource_id,part_of_package,......) 
    SELECT booking.bookng_id,resource.resource_id,part_of_package FROM resource,booking ,....
    WHERE....