GVKun编程网logo

MySQL-将主键从一个表插入到另一个表(外键)(mysql中一张表的主键个数为)

19

本文将为您提供关于MySQL-将主键从一个表插入到另一个表的详细介绍,我们还将为您解释外键的相关知识,同时,我们还将为您提供关于mySql从一个或多个表查数据,插入到另外一个表、mysql从一个表中查

本文将为您提供关于MySQL-将主键从一个表插入到另一个表的详细介绍,我们还将为您解释外键的相关知识,同时,我们还将为您提供关于mySql 从一个或多个表查数据,插入到另外一个表、mysql 从一个表中查数据并插入另一个表实现方法、mysql 从一个表中查数据,插入另一个表、MYSQL-将最近匹配的记录从一个表连接到另一个表的实用信息。

本文目录一览:

MySQL-将主键从一个表插入到另一个表(外键)(mysql中一张表的主键个数为)

MySQL-将主键从一个表插入到另一个表(外键)(mysql中一张表的主键个数为)

尽管有人问过这个问题,但由于我不断收到错误,它并没有真正适应我希望它对我的工作方式。

我有一个表:Customer_orders,将值插入到其中:

<sql:update var="count">    insert into customer_order (order_date,delivered ,shipping_date,customer_number )     values ( SUBDATE(NOW(), INTERVAL 17 DAY), 1, SUBDATE(NOW(), INTERVAL 14 DAY), <%= session.getAttribute( "username" ) %> );     </sql:update>

现在,此customer_order具有称为“订单号”的主键,该键会自动递增

我想使用这个order_number并将其插入到表中,我尝试过类似的操作:

<sql:update var="count">insert into order_item (item_code,value,order_number,quantity)values( "<%= request.getParameter( "item_code" ) %>", "<%= request.getParameter( "item_price" ) %>",customer_order(order_number),1 );</sql:update>

我什至尝试了不同的方法来插入order_number,但是我无法使其正常工作。当我创建两个表时,order_number是第二个表中的外键,因此我认为它会自己获取值,但没有。

我究竟做错了什么?

答案1

小编典典

您可以简单地从事务中的第一个查询中获取最后插入的ID,然后根据需要将其插入到另一个表中,因此,我建议采用这种方法,它可能会对您有所帮助:

<sql:transaction dataSource="${snapshot}"  >  <sql:update var="count">       insert into customer_order (order_date,delivered ,shipping_date,customer_number )        values ( SUBDATE(NOW(), INTERVAL 17 DAY), 1, SUBDATE(NOW(), INTERVAL 14 DAY), <%= session.getAttribute( "username" ) %> ); </sql:update>   <sql:query var="las_inserted_id" >    SELECT LAST_INSERT_ID() as last_Id  </sql:query >  /*now you got the last inserted id so that you can simply insert it in your new query as you like*/<sql:update var="count">     insert into order_item (item_code,value,order_number,quantity)     values( "<%= request.getParameter( "item_code" ) %>", "<%= request.getParameter( "item_price" ) %>",${ las_inserted_id.rows[0].last_Id },1 );</sql:update></sql:transaction>

注意 :请尽您所能避免视图中的sql逻辑代码!这样就可以轻松维护您的应用程序

mySql 从一个或多个表查数据,插入到另外一个表

mySql 从一个或多个表查数据,插入到另外一个表

  1. 不指定目标表的插入字段,则要求来源表的 查询字段数量 = 目标表字段数量

#目标表的字段数 = 来源表1的字段数
 
INSERT INTO  目标表  SELECT  * FROM  来源表1 ;    
        
#目标表的字段数 = 3 ,来源表2的字段数 >= 3
INSERT INTO  目标表  SELECT   字段1, 字段2, 字段3   FROM  来源表2 ;

2. .指定目标表的插入字段

#(字段1,字段2, ...) 的数量  =  字段a,字段b, ... 的数量
INSERT INTO  目标表 (字段1, 字段2, ...)  SELECT   字段a, 字段b, ...   FROM  来源表 ;


3.从多个表查数据
与之前类似,这里给出一个例子

INSERT INTO T01_school
SELECT t1.*, t2.* 
FROM         T02_class   t1
LEFT JOIN   T03_student t2 ON t1.stdId = t2.id 


INSERT INTO cc_sys_user_role_relation(sys_user_id,role_id)
SELECT su.id AS sys_user_id ,role.id AS role_id FROM cc_sys_user su ,cc_role role 
WHERE su.name=''wesadminOnExam'' AND role.`name`=''在线考试'';
 

 

-- 字段拼接设置值


UPDATE cc_question SET properties= CONCAT(''{"examinationPaperCode":"'',SUBSTRING(`code`,LOCATE(''-'',`code`)+1,4),''","questionNumber":"'',SUBSTRING_INDEX(`code`,''-'',-1),''"}'') WHERE id=21742;

SELECT SUBSTRING(''FerG11-2019-25'',LOCATE(''-'',''FerG11-2019-25'')+1,4);
SELECT SUBSTRING_INDEX(''FerG11-2019-258888'',''-'',-1);
SELECT SUBSTRING_INDEX(''FerG11-2019-25'',''-'',2);

mysql 从一个表中查数据并插入另一个表实现方法

mysql 从一个表中查数据并插入另一个表实现方法

这篇文章主要介绍了mysql 从一个表中查数据并插入另一个表实现方法的相关资料,需要的朋友可以参考下

mysql 从一个表中查数据并插入另一个表实现方法

不管是在网站开发还是在应用程序开发中,我们经常会碰到需要将MySQL或MS SQLServer某个表的数据批量导入到另一个表的情况,甚至有时还需要指定导入字段。

本文就将以MySQL数据库为例,介绍如何通过SQL命令行将某个表的所有数据或指定字段的数据,导入到目标表 中。此方法对于SQLServer数据库,也就是T-SQL来说,同样适用 。

类别一、 如果两张张表(导出表和目标表)的字段一致,并且希望插入全部数据,可以用这种方法:

INSERT INTO  目标表  SELECT  * FROM  来源表 ;

例如,要将 articles 表插入到 newArticles 表中,则可以通过如下SQL语句实现:

INSERT INTO  newArticles  SELECT  * FROM  articles ;

类别二、 如果只希望导入指定字段,可以用这种方法:

INSERT INTO  目标表 (字段1, 字段2, ...)  SELECT   字段1, 字段2, ...   FROM  来源表 ;

请注意以上两表的字段必须一致,否则会出现数据转换错误。


INSERT INTO TPersonnelChange(  
   UserId, 
   DepId, 
   SubDepId, 
   PostionType, 
   AuthorityId, 
   ChangeDateS, 
   InsertDate, 
   UpdateDate, 
   SakuseiSyaId 
 )SELECT 
   UserId, 
   DepId, 
   SubDepId, 
   PostionType, 
   AuthorityId, 
   DATE_FORMAT(EmployDate, &#39;%Y%m%d&#39;), 
   NOW(), 
   NOW(), 
   1 
FROM 
   TUserMst WHERE 
   `Status` = 0 
AND QuitFlg = 0 
AND UserId > 2
登录后复制

以上就是mysql 从一个表中查数据并插入另一个表实现方法的详细内容,更多请关注php中文网其它相关文章!

mysql 从一个表中查数据,插入另一个表

mysql 从一个表中查数据,插入另一个表

 

正确:

INSERT into t_cities1(city_id,city,province_id) (SELECT city_id,city,province_id from((SELECT * from t_cities where id not in (SELECT id from t_cities1)) as citys))

错误

INSERT into t_cities1(city_id,city,province_id) VALUES((SELECT city_id,city,province_id from((SELECT * from t_cities where id not in (SELECT id from t_cities1)) as citys)))

MYSQL-将最近匹配的记录从一个表连接到另一个表

MYSQL-将最近匹配的记录从一个表连接到另一个表

我有两个看起来像这样的表:

表:案例

id
名称
状态
case_no

表:注意事项

id
case_id
note_date
注释

我希望能够创建一个查询,以从案例表中获取数据,并仅从注释表中获取案例表中每一行的最新条目。到目前为止,我根本没有运气。

任何指针将不胜感激

关于MySQL-将主键从一个表插入到另一个表外键的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于mySql 从一个或多个表查数据,插入到另外一个表、mysql 从一个表中查数据并插入另一个表实现方法、mysql 从一个表中查数据,插入另一个表、MYSQL-将最近匹配的记录从一个表连接到另一个表的相关信息,请在本站寻找。

本文标签: