本文将为您提供关于MySQL-将主键从一个表插入到另一个表的详细介绍,我们还将为您解释外键的相关知识,同时,我们还将为您提供关于mySql从一个或多个表查数据,插入到另外一个表、mysql从一个表中查
本文将为您提供关于MySQL-将主键从一个表插入到另一个表的详细介绍,我们还将为您解释外键的相关知识,同时,我们还将为您提供关于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 从一个或多个表查数据,插入到另外一个表
- 不指定目标表的插入字段,则要求来源表的 查询字段数量 = 目标表字段数量
#目标表的字段数 = 来源表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或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, '%Y%m%d'), NOW(), NOW(), 1 FROM TUserMst WHERE `Status` = 0 AND QuitFlg = 0 AND UserId > 2
以上就是
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-将最近匹配的记录从一个表连接到另一个表
我有两个看起来像这样的表:
表:案例
id
名称
状态
case_no
表:注意事项
id
case_id
note_date
注释
我希望能够创建一个查询,以从案例表中获取数据,并仅从注释表中获取案例表中每一行的最新条目。到目前为止,我根本没有运气。
任何指针将不胜感激
关于MySQL-将主键从一个表插入到另一个表和外键的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于mySql 从一个或多个表查数据,插入到另外一个表、mysql 从一个表中查数据并插入另一个表实现方法、mysql 从一个表中查数据,插入另一个表、MYSQL-将最近匹配的记录从一个表连接到另一个表的相关信息,请在本站寻找。
本文标签: