Tag: sql

SQL来生成一个从1到100的数字列表

使用DUAL表,我怎样才能得到从1到100的数字列表?

有没有什么办法可以显示`gunzip <database.sql.gz |的进度 mysql …`进程?

每周一次,我需要运行一个巨大的数据库更新到我的本地开发环境,如下所示: $ gunzip < /path/to/database1.sql.gz | mysql -uUSER -p database1 & $ gunzip < /path/to/database2.sql.gz | mysql -uUSER -p database2 & $ gunzip < /path/to/database3.sql.gz | mysql -uUSER -p database3 & 我试图在一夜之间运行,因为它可能需要几个小时才能完成。 你能帮我想出一个方法来展示这些任务的进展吗? 这里有一些猜测: 获取数据库的解压缩文件大小,并与我的本地数据库大小进行比较 在mysql中运行show processlist来查看当前正在插入的表(我当前使用的方法,但是有些表是巨大的,至less有一个数据库只有一个巨大的表,所以这个表中的大部分都被卡住了,less于帮助) 所有的db.sql.gz文件都是标准的gzipped mysqldumps,所以我不认为我可以在转储中创build任何东西来给我一个更新。 (但是,如果我错过了某些东西,我会开放的) 赏金规则 答案必须: 提供有用且合理的准确进度(可视化如scp (首选!)或通过简单的进度数据库表,可轻松访问)。 不要打破常规mysqldump导出或常规gunzip … | mysql gunzip … | mysql导入(对于其他工程师谁可能不会使用任何你想出的) 不要给我的DBA心脏病发作 – 所以留在特殊的mysqldump或其他MySQL分支请求容易。

SQL UPDATE中的str_replace?

这是一个示例表格: name | picture John S. | http://servera.host.com/johns.png Linda B. | http://servera.host.com/lindab.png … 假设还有几百个logging。 让我们也说我们把服务器从“servera”移到“serverb”。 是否有可能进入这个表, 一个查询重命名列“图片”的内容为每个logging读取正确的服务器名称?

将两个数据库列连接成一个结果集列

我使用以下SQL将一个表中的多个数据库列连接到结果集中的一列中: SELECT (field1 + '' + field2 + '' + field3) FROM table1 当其中一个字段为空时,我得到了整个连接expression式的空结果。 我怎样才能克服呢? 数据库是MS SQL Server 2008.顺便说一下,这是连接数据库列的最好方法吗? 有没有标准的SQL这样做?

什么冒号签署“:”在SQL查询?

什么:在查询中代表什么? INSERT INTO MyTable (ID) VALUES (:myId) 它如何获得所需的价值? 编辑:那是什么标志叫? 我想在谷歌search,但是什么名字: ?

在T SQL中添加一个月份到date

我如何添加一个月到我在where子句下检查的date? 例如: select * from Reference where reference_dt + 1 month

如果在INSERT,UPDATE,DELETE之前存在优化

当需要根据某些条件执行INSERT,UPDATE或DELETE语句时,经常会出现这种情况。 而我的问题是,对查询性能的影响是否在命令之前添加IF EXISTS。 例 IF EXISTS(SELECT 1 FROM Contacs WHERE [Type] = 1) UPDATE Contacs SET [Deleted] = 1 WHERE [Type] = 1 什么INSERT或删除?

SQL SELECT LIKE(不敏感shell)

我正在尝试执行SQL查询: select * from table where column like '%value%'; 但数据保存为“价值”(V是大写)。 当我执行这个查询时,我没有得到任何行。 我如何做这样的调用,不pipeangular色的shell如何,它都会寻找“价值”?

MySQL错误1241:操作数应该包含1列(s)

我正试图从表1插入数据到表2 insert into table2(Name,Subject,student_id,result) select (Name,Subject,student_id,result) from table1; 表2的关键是student_id。 假设没有任何重复。 我得到的错误: MySQL error 1241: Operand should contain 1 column(s) 表2中只有四列。

在PostgreSQL中删除完全重复的行(并且只保留1)

我在PostgreSQL 8.3.8数据库中有一个表,它没有任何键/约束,并且有多个具有完全相同值的行。 我想删除所有重复项,并保持每行只有一个副本。 有一列(特别是“钥匙”),可以用来标识重复(即每个不同的“钥匙”应该只有一个条目)。 我怎样才能做到这一点? (最好用一个单一的SQL命令)在这种情况下速度不是问题(只有几行)。