问题标签 [insert-select]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - 插入唯一行而不更新旧行
我在不同的数据库中有两个相似的表,我想从另一个插入一个。同时我想确保每次 mySql 遇到“重复 id”错误时,它都会在新表的底部插入行并分配一个新的唯一 id。我已经尝试过:INSERT...SELECT...ON DUPLICATE KEY UPDATE
但是如果它找到“重复键”而不是更新前一行,我找不到让它插入新行的方法。
mysql - 当一列唯一时插入 SELECT 查询
我需要调用 INSERT + SELECT 将用户数据导入到不同的表中,并且我需要过滤 user_name 重复项,所以我需要这样的东西:
但是 distinct 仅在使用时才有效,distinct email, user_name, password
并且所有这些列都必须是唯一的。
有没有其他方法可以使用 uniq user_names 插入选择,(我只需要第一行 - 具有较低的 id)?
编辑我忘了提到我使用mysql
mysql - 如何通过加入字符串来加速 INSERT SELECT
我想调用插入选择并尝试使用此选择(当一列是唯一的时,借助此 INSERT SELECT 查询的帮助)
我用它插入
执行需要很长时间(我会在几分钟后取消它)
aiki_users 表有 100k 行,openclipart_files 有 30k 行,基本上我只是将所有内容从 aiki_users 复制到 openclipart_users 跳过重复项,我希望头像是旧表中是字符串的文件的 id(只有大约 300 个用户有大约 1k 的 svg 头像用户没有''头像,但我只有什么 svg)。
有什么方法可以快速将该化身(没有它在几秒钟内执行 INSERT SELECT)插入到 openclipart_users 中,任何可行的解决方案都会很好(我的意思是不到一分钟)。
SELECT 上解释的EDIT输出
sqlite - 相当于 Oracle 的 ROWNUM 的 SQLITE?
我正在向 SQLite3 中的表添加一个“索引”列,以允许用户通过重命名旧数据库并使用额外的列在其位置创建一个新数据库来轻松地重新排序数据。
我遇到的问题是,当我插入...选择旧值时,我需要在“索引”列中给每一行一个唯一的数字。
我所做的搜索在 Oracle 中发现了一个有用的术语,称为 ROWNUM,但 SQLite3 没有。SQLite 中是否有等价的东西?
mysql - 在mysql中使用条件将用户的对象关系合并到另一个用户
这是我的第一个 SO 问题 :)
我正在尝试将临时用户“合并”到现有用户,以及他们所有相关的对象关系——一个是“post_relationships”
问题是..如果两个用户都与同一个帖子有关系,一个简单的 INSERT INTO ... SELECT 语句会产生一个 DUPLICATE KEY 错误..
另外,如果其中一个用户具有更高的权限级别,我想保留两个用户的最高权限级别。
我已经构建了一个有效的查询,但我想知道是否有更好的方法来完成这个。我担心随着表的增长,这个查询不会那么有效。
当条件出现时,它总是强制更新
这让我担心这里有一些矫枉过正的代码。有什么建议么?
谢谢!
sql - SQL:多次复制一行,每次改变一个值
我在表中有一行数据:
我想复制这一行,但从列表中为每个新行分配一个不同的键(实际上是外键):
可以通过查询轻松获得此列表。复制后,表格应如下所示:
到目前为止,我想出的只是:
这有效,但当然它一次只复制一行。有没有办法一次复制所有行?
如果它有所作为,我正在使用 Oracle。
php - 插入到.....选择从
我想把它calory
作为第一个值fruits
,我做不到,有人可以帮忙吗?
performance - Postgresql:SELECT DISTINCT ON 的更快替代方案
我在将过滤后的数据从一个表复制到另一个表(具有类似结构)时遇到问题。基本上,我有一个包含大约 110 亿行的大表,我想将基于其中一列(称为“指纹”)唯一的记录复制到另一个表中。我试过这样的事情:
它通常有效,但速度很慢;我在一个包含 800 000 行的较小的表上对其进行了测试,花了将近一个小时。我尝试将 INSERT 更改为一对 COPY (带二进制选项)语句,但不知何故更糟......
我在 Linux LMDE 上运行 psql 服务器,i5-2410m 具有 6gigs 的 RAM。我不知道它是否需要这么长时间以及是否有办法改进它。我会很感激任何提示。
oracle - ORACLE:INSERT SELECT FROM 2 个视图和参数值
我正在尝试从视图 MYVIEW1 和 MYVIEW2 将一些字段插入到 MYTABLE 中,然后从参数(这是存储过程的一部分)为 UPDATED_BY 添加一个值,为 UPDATED_ON 添加一个值。如何使用 INSERT SELECT 或其他方式正确地做到这一点?
如何插入(QTR 的 MO_PERF 的第一个月)作为 MO1_PCT 和(QTR 的 MO_PERF 的第二个月)作为 MO2_PCT 和(QTR 的 MO_PERF 的最后一个月)作为 MO3_PCT,确保我在正确的季度内插入了正确的月份和年。然后检查每个月的 MO_PERF 值是否至少达到 85,否则将 INC 设置为 NULL。
jdbc - 插入选择不起作用
使用 Informix 11.7,我尝试在 select 语句中使用 jdbc 位置参数执行 INSERT SELECT 查询,如下所示:
参数设置如下:
我收到以下错误:
线程“main”java.sql.SQLException 中的异常:发生了语法错误。
当位置参数“?” 放在其他地方它工作正常。我使用 PostgreSQL 没有这个问题。我的查询有什么问题?我使用 Informix JDBC Driver v3.70 JC1。
谢谢你的帮助。