首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

mysql实现获取自增id插入其他

现在有这样一个需求,就是我向A插入一条数据,id是自增的。...插入之后,还需要向B插入一条数据,但是B需要保存的数据要使用刚刚A自增后的id, 这个其实是一个比较常见的需求,就是两张之间的一个关联,如果用程序来执行也是很容易实现。...比如我就在用sql执行之后,获取A的id插入B 实现方式如下: insert into A (id,name,code) values (null, "zhagnsan", "zs"); // 注意...A的id要设置为自增,给null值即可 set @id = @@IDENTITY; // 使用id变量保存刚刚自增生成的id insert into B (id,a_id,name) values...(null, @id, "lisi"); // 使用变量获取AId 上面是用自定义变量的形式进行保存的,如果你只是想查一下是多少,可以直接使用: select @@IDENTITY; 好了,如果对你有帮助

3.5K20

Mysql实现获取自增id插入其他

现在有这样一个需求,就是我向A插入一条数据,id是自增的。...插入之后,还需要向B插入一条数据,但是B需要保存的数据要使用刚刚A自增后的id, 这个其实是一个比较常见的需求,就是两张之间的一个关联,如果用程序来执行也是很容易实现。...比如我就在用sql执行之后,获取A的id插入B 实现方式如下: insert into A (id,name,code) values (null, "zhagnsan", "zs"); // 注意...A的id要设置为自增,给null值即可 set @id = @@IDENTITY; // 使用id变量保存刚刚自增生成的id insert into B (id,a_id,name) values...(null, @id, "lisi"); // 使用变量获取AId 上面是用自定义变量的形式进行保存的,如果你只是想查一下是多少,可以直接使用: select @@IDENTITY; 好了,如果对你有帮助

3.9K30
您找到你想要的搜索结果了吗?
是的
没有找到

yhd-VBA从一个工作簿的某工作查找符合条件的数据插入一个工作簿的某工作

今天把学习的源文件共享了出来,供大家学习使用 上次想到要学习这个 结合网友也提出意见,做一个,如果有用,请下载或复制代码使用 【问题】我们在工作中有时要在某个文件(工作簿)查找一些数据,提取出来...想要做好了以后同样的工作就方便了 【想法】 在一个程序主控文件 设定:数据源文件(要在那里查找的工作簿) 设定:目标文件(要保存起来的那个文件) 输入你要查找的数据:如:含有:杨过,郭靖的数据。...要复制整行出来 主控文件设定如图 数据源文件有两个工作 查找到"郭靖"的数据保存到目标文件的【射雕英雄传】工作 查找到"杨过"的数据保存到目标文件的【第一个】工作 【代码】 Sub...从一个工作簿的某工作查找符合条件的数据插入一个工作簿的某工作() Dim outFile As String, inFile As String Dim outWb As...并转发使更多的人学习

5.1K22

【MySQL】的增删查改(进阶)

一对多 4.多对多) 根据上述内容,套入固定的“公式”,然后就可以得到。 一对一关系 在教务系统,有一个实体,学生,还有一个实体,账号。...: student(studentId,name); course(courseId,name); student_course(studentId,courseId); 新增 把查询的结果插入一个...联合查询(多表查询) 实际开发往往数据来自不同的,所以需要多表联合查询。多表查询是对多张的数据取笛卡尔积: 笛卡尔积是通过排列组合来的。 笛卡尔积得到一个更大的。...子查询就是把两个操作合并~ 多行子查询 返回多行记录的子查询 任务:查询“语文”或者“英语课程的成绩信息” 分析:1.现根据名字查课程id 2.根据课程id查询课程分数 在这里插入图片描述...合并查询 本质上是吧两个查询的结果集,合并成一个

3K20

MySQL数据库的增删改查(进阶)

1.新增   将一个的内容插入一个....计算每个岗位的平均工资,刨除张三,也刨除平均工资超过2000的数据. 2.2 联合查询 实际开发往往数据来自不同的,所以需要多表联合查询。...; select 字段 from 1 别名1,2 别名2 where 连接条件 and 其他条件; 笛卡尔积,就是得到了一个更大的.例数,就是原来的两个的列数之和.行数,就是原来两个的行数之积...;  对于左连接,以左侧的为基准,会保证左侧的每一个数据都存在,左侧数据在右侧不存在的部分,会使用null来填充. 2.2.3 自连接连接是指在同一张连接自身进行查询. 2.2.4...子查询 子查询是指嵌入在其他sql语句中的select语句,也叫嵌套查询 多行子查询:返回多行记录的子查询 IN 关键字 2.2.5 合并查询 union 允许从不同的多个分别查询,只要求每个查询的结果集合列的类型和个数匹配即可

12910

Explain 执行计划 和 SQL优化

且只有一个 union:union连接两个select查询,第一个查询是dervied派生,除了第一个外,第二个以后的 select_type都是union dependent union:与union...那么这里显示的是别名,如果不涉及对数据的操作,那么这显示为null,如果显示为尖括号括起来的就表示这个是临时,后边的N就是执行计划 的id,表示结果来自于这个查询产生。...如果是尖括号括起来,与类似, 也是一个临时,表示这个结果来自于union查询的id为M,N的结果集 Type列 :表示访问类型,性能从低到高依次是:ALL...其他数据库也叫做唯一索引扫描 NULL:MySQL在优化过程中分解语句,执行时甚至不用访问或索引 possible_keys列 表示MySQL能使用哪个索引在中找到行,查询涉及的字段上若存在索引...func Rows列: 表示MySQL根据统计信息及索引选用情况,估算的找到所需的记录所需要读取的行数,值越大性能越差 Extra列: 包含不适合在其他显示但十分重要的额外信息 Using index

64220

SQL查询提速秘诀,避免锁死数据库的数据库代码

于是,他查询住在加利福尼亚州的客户,把查询结果放到一个临时。 然后再来查询年收入高于 4 万美元的客户,把那些结果放到另一个临时。最后他连接两个,获得最终结果。 你是在逗我吧?...如果你有一个报表或存储过程(或一组)要对大执行类似的连接操作,通过提前连接,并将它们持久化存储一个来预暂存数据,就可以对你大有帮助。 现在,报表可以针对该预暂存来运行,避免大连接。...触发器的问题:无论你希望触发器执行什么,都会在与原始操作同一个的事务执行。 如果你写一个触发器,以便更新 Orders 的行时将数据插入一个,会同时锁定这两个,直到触发器执行完毕。...如果你需要在更新后将数据插入一个,要将更新和插入放入存储过程,并在单独的事务执行。 如果你需要回滚,就很容易回滚,不必同时锁定这两个。...几年前我做过一项基准测试,我将一堆数据插入一个带聚类 GUID 的,将同样的数据插入一个带 IDENTITY 列的

1.5K30

算法工程师的修养 | 图解SQL

下面是 UNION 操作的示意图: INTERSECT 操作符用于返回两个集合的共同部分,即同时出现在第一个查询结果和第二个查询结果的数据,并且排除了结果的重复数据。...;对于两个不满足连接条件的数据返回空值。...全外连接的原理如下图所示: 交叉连接也称为笛卡尔积(Cartesian Product)。两个的交叉连接相当于一个的所有行和另一个的所有行两两组合,结果的数量为两个的行数相乘。...INSERT 语句插入了 3 条记录,或者说是插入一个包含 3 条记录的关系。...由于我们经常插入单条记录,并没有意识实际上是以为单位进行操作。 同样,UPDATE 和 DELETE 语句也都是以关系为单位的操作;只不过我们习惯了说更新一行数据或者删除几条记录。

67120

图解 SQL,这也太形象了吧!

具体来说,UNION 和 UNION ALL 用于计算两个集合的并集,返回出现在第一个查询结果或者第二个查询结果的数据。...INTERSECT 操作符用于返回两个集合的共同部分,即同时出现在第一个查询结果和第二个查询结果的数据,并且排除了结果的重复数据。INTERSECT 运算的示意图如下: ?...;对于两个不满足连接条件的数据返回空值。...全外连接的原理如下图所示: ? 交叉连接也称为笛卡尔积(Cartesian Product)。两个的交叉连接相当于一个的所有行和另一个的所有行两两组合,结果的数量为两个的行数相乘。...由于我们经常插入单条记录,并没有意识实际上是以为单位进行操作。 同样,UPDATE 和 DELETE 语句也都是以关系为单位的操作;只不过我们习惯了说更新一行数据或者删除几条记录。

57910

图解SQL基础知识,小白也能看懂的SQL文章!

下面是 UNION 操作的示意图: INTERSECT 操作符用于返回两个集合的共同部分,即同时出现在第一个查询结果和第二个查询结果的数据,并且排除了结果的重复数据。...;对于两个不满足连接条件的数据返回空值。...全外连接的原理如下图所示: 交叉连接也称为笛卡尔积(Cartesian Product)。两个的交叉连接相当于一个的所有行和另一个的所有行两两组合,结果的数量为两个的行数相乘。...INSERT 语句插入了 3 条记录,或者说是插入一个包含 3 条记录的关系。...由于我们经常插入单条记录,并没有意识实际上是以为单位进行操作。 同样,UPDATE 和 DELETE 语句也都是以关系为单位的操作;只不过我们习惯了说更新一行数据或者删除几条记录。

66120

图解 SQL,这也太形象了吧!

具体来说,UNION 和 UNION ALL 用于计算两个集合的并集,返回出现在第一个查询结果或者第二个查询结果的数据。...下面是 UNION 操作的示意图: INTERSECT 操作符用于返回两个集合的共同部分,即同时出现在第一个查询结果和第二个查询结果的数据,并且排除了结果的重复数据。...;对于两个不满足连接条件的数据返回空值。...全外连接的原理如下图所示: 交叉连接也称为笛卡尔积(Cartesian Product)。两个的交叉连接相当于一个的所有行和另一个的所有行两两组合,结果的数量为两个的行数相乘。...由于我们经常插入单条记录,并没有意识实际上是以为单位进行操作。 同样,UPDATE 和 DELETE 语句也都是以关系为单位的操作;只不过我们习惯了说更新一行数据或者删除几条记录。

51720

图解 SQL,这也太形象了吧!

具体来说,UNION 和 UNION ALL 用于计算两个集合的并集,返回出现在第一个查询结果或者第二个查询结果的数据。...INTERSECT 操作符用于返回两个集合的共同部分,即同时出现在第一个查询结果和第二个查询结果的数据,并且排除了结果的重复数据。INTERSECT 运算的示意图如下: ?...;对于两个不满足连接条件的数据返回空值。...全外连接的原理如下图所示: ? 交叉连接也称为笛卡尔积(Cartesian Product)。两个的交叉连接相当于一个的所有行和另一个的所有行两两组合,结果的数量为两个的行数相乘。...由于我们经常插入单条记录,并没有意识实际上是以为单位进行操作。 同样,UPDATE 和 DELETE 语句也都是以关系为单位的操作;只不过我们习惯了说更新一行数据或者删除几条记录。

1.3K20

【MySQL】MySQL数据库的进阶使用

1.2 插入查询结果(删除的重复记录) 1. insert除了直接插入数据外,还支持插入select查询结果,如果要删除重复的记录,我们想要让这个操作是原子的。...那我们就可以新建一个no_duplicate_table,然后查询duplicate_table不重复的数据,也就是在select查询时,添加关键字distinct,将查询结果插入no_duplicate_table...如果要一长串的显示信息,则可以使用concat将列字段和其他字符串连接在一起,然后进行select显示 replace可以在第一个参数查找第二个参数的位置,查找到后用第三个参数进行替换。...像上面我们所学到的所有查询,比如带where子句,order by子句,group by子句,having子句,分页显示limit的查询都是单查询,而我们一般查询的数据可能不止来自一个,很有可能来自多个...内连接实际就是先根据on的条件对表的连接结果作筛选,所以关键字的优先级为from>on>join,因为作笛卡尔积之前,要指定连接条件,让两个在真正连接时,有目的的连接

27420

MYSQL优化有理有据全分析(面试必备)

4、 DEPENDENT UNIONUNION的第二个或后面的SELECT语句,取决于外面的查询。 5、 UNION RESULT连接查询的结果。...· Using index:从只使用索引树的信息而不需要进一步搜索读取实际的行来检索的列信息。 · Using temporary:为了解决查询,MySQL需要创建一个临时来容纳结果。...增加中间 对于需要经常联合查询的,可以建立中间以提高查询效率。 通过建立中间,将需要通过联合查询的数据插入中间,然后将原来的联合查询改为对中间的查询。...的规范化程度越高,之间的关系越多,需要连接查询的情况也就越多,性能也就越差。 注意: 冗余字段的值在一个修改了,就要想办法在其他更新,否则就会导致数据不一致的问题。...MyISAM 禁用索引 对于非空插入记录时,MySQL会根据的索引对插入的记录建立索引。如果插入大量数据,建立索引会降低插入数据速度。

1.3K30

不得不看,只有专家才知道的17个SQL查询提速秘诀!

于是,他查询住在加利福尼亚州的客户,把查询结果放到一个临时。 然后再来查询年收入高于 4 万美元的客户,把那些结果放到另一个临时。最后他连接两个,获得最终结果。 你是在逗我吧?...如果你有一个报表或存储过程(或一组)要对大执行类似的连接操作,通过提前连接,并将它们持久化存储一个来预暂存数据,就可以对你大有帮助。 现在,报表可以针对该预暂存来运行,避免大连接。...如果你写一个触发器,以便更新 Orders 的行时将数据插入一个,会同时锁定这两个,直到触发器执行完毕。...如果你需要在更新后将数据插入一个,要将更新和插入放入存储过程,并在单独的事务执行。 如果你需要回滚,就很容易回滚,不必同时锁定这两个。...几年前我做过一项基准测试,我将一堆数据插入一个带聚类 GUID 的,将同样的数据插入一个带 IDENTITY 列的

1K60

sql server 连接查询_连查询语句

UNION 运算符通过组合其他两个结果(例如 TABLE1 和 TABLE2)并消去任何重复行而派生出一个结果。...两种情况下,派生的每一行不是来自 TABLE1 就是来自 TABLE2。 注意:使用UNION时,两张查询的结果有相同数量的列、列类型相似。...: ID Name 101 Tom 102 Lucy 101 Mrs Lee 102 Lucy 2、INNER JOIN(内连接) INNER JOIN(内连接),也成为自然连接 作用:根据两个或多个的列之间的关系...注意: 内连接是从结果删除其他连接没有匹配行的所有行,所以内连接可能会丢失信息。 重点:内连接,只查匹配行。...3)FULL JOIN (FULL OUTER JOIN,全外连接) 全外连接,简称:全连接。会把两个所有的行都显示在结果 1)使用全连接查询学生的信息,其中包括学生ID,学生姓名和专业名称。

3.4K10
领券