- 浏览: 595407 次
- 性别:
- 来自: 厦门
文章分类
- 全部博客 (669)
- oracle (36)
- java (98)
- spring (48)
- UML (2)
- hibernate (10)
- tomcat (7)
- 高性能 (11)
- mysql (25)
- sql (19)
- web (42)
- 数据库设计 (4)
- Nio (6)
- Netty (8)
- Excel (3)
- File (4)
- AOP (1)
- Jetty (1)
- Log4J (4)
- 链表 (1)
- Spring Junit4 (3)
- Autowired Resource (0)
- Jackson (1)
- Javascript (58)
- Spring Cache (2)
- Spring - CXF (2)
- Spring Inject (2)
- 汉字拼音 (3)
- 代理模式 (3)
- Spring事务 (4)
- ActiveMQ (6)
- XML (3)
- Cglib (2)
- Activiti (15)
- 附件问题 (1)
- javaMail (1)
- Thread (19)
- 算法 (6)
- 正则表达式 (3)
- 国际化 (2)
- Json (3)
- EJB (3)
- Struts2 (1)
- Maven (7)
- Mybatis (7)
- Redis (8)
- DWR (1)
- Lucene (2)
- Linux (73)
- 杂谈 (2)
- CSS (13)
- Linux服务篇 (3)
- Kettle (9)
- android (81)
- protocol (2)
- EasyUI (6)
- nginx (2)
- zookeeper (6)
- Hadoop (41)
- cache (7)
- shiro (3)
- HBase (12)
- Hive (8)
- Spark (15)
- Scala (16)
- YARN (3)
- Kafka (5)
- Sqoop (2)
- Pig (3)
- Vue (6)
- sprint boot (19)
- dubbo (2)
- mongodb (2)
最新评论
最小化表查询次数
-->在含有子查询的SQL语句中,要特别注意减少对表的查询 -->低效: SELECT * FROM employees WHERE department_id = (SELECT department_id FROM departments WHERE department_name = 'Marketing') AND manager_id = (SELECT manager_id FROM departments WHERE department_name = 'Marketing'); -->高效: SELECT * FROM employees WHERE ( department_id, manager_id ) = (SELECT department_id, manager_id FROM departments WHERE department_name = 'Marketing') -->类似更新多列的情形 -->低效: UPDATE employees SET job_id = ( SELECT MAX( job_id ) FROM jobs ), salary = ( SELECT AVG( min_salary ) FROM jobs ) WHERE department_id = 10; -->高效: UPDATE employees SET ( job_id, salary ) = ( SELECT MAX( job_id ), AVG( min_salary ) FROM jobs ) WHERE department_id = 10;
发表评论
文章已被作者锁定,不允许评论。
-
sql 查询一些基础数据(不经常变)关联关系时可以把关联关系写入到表中
2018-04-16 15:18 433原来的查询语句 FROM table1 t LEFT ... -
sql 用inner join取代in和exists
2018-01-02 16:48 1151使用表连接替换EXISTS ... -
oracle HINT详解
2017-09-01 10:42 518ORACLE的HINT详解 hints是oracle提供的 ... -
oracle jdbctemplate如何优化查询速度
2017-08-21 09:33 13181.设置setFetchSize进行优化 // 可以优化 ... -
oracle Parallel模式-Parallel用法(/*+PARALLEL(n)*/)
2017-08-18 16:48 18981.用途 强行启用 ... -
oracle 存储过程学习总结
2016-08-22 08:42 358dbms_output.put_line('CONCAT ... -
oracle SGA总结信息
2016-07-06 10:38 511SGA 系统全局区 SGA是Oracle用来为实例村粗数据和 ... -
oracle where条件分支查询
2016-06-30 16:16 521select * from test xx where ... -
oracle with as用法
2016-06-24 09:58 937with as语法 –针对一个别名 with tmp as ... -
oracle 重复数据处理的sql整理
2016-06-22 14:44 397Oracle 删除重复数据只留一条 1、查找表中多余的重 ... -
oracle 数据库组成部分(数据库(各种文件)+实例(SGA PGA + 后台进程))知识
2016-04-11 19:51 1268一、SQL server中的实例与 ... -
oracle expdp与impdp导入导出
2016-03-17 10:17 1283[b]数据泵工具导出的步骤:[/b] 1、创建DIRECT ... -
oracle 常用sql语句积累
2016-01-28 11:01 5691.删除重复列 delete from t t1 where ... -
oracle forall关键字进行批量操作
2014-12-12 15:26 1044两个数据操纵语言(DML)语句:BULK COLLECT和FO ... -
oracle 表中有子父关系列则使用CONNECT BY PRIOR
2014-10-27 10:08 419查询名字为xx xxx的所有子数据 SELECT re.U ... -
oracle 存储过程使用实例
2014-10-22 17:41 6071.建包 CREATE OR REPLACE PACKA ... -
oracle 删除大量数据后整理表(analyze table xxx compute statistics)
2014-10-17 18:09 22271. DELETE 后 TRUNCATE TABLE ; 然 ... -
oracle splitstr 函数
2014-10-15 17:45 1408splitstr函数 CREATE OR REPLACE ... -
oracle 高效Sql语句总结
2014-10-08 11:23 503No SQL,No cost. SQL语句是造成数据库 ... -
oracle merge 更新或插入数据
2014-09-26 14:26 494主要功能 提供有条件地更新和插入数据到数据库表中 如果该 ...
相关推荐
+ create table tab_new as select col1,col2… from tab_old definition only * 删除新表:drop table tabname * 增加一个列:Alter table tabname add column col type * 删除主键:Alter table tabname drop ...
1),delete from tablename where id not in (select max(id) from tablename group by col1,col2,...) 2),select distinct * into temp from tablename delete from tablename insert into tablename select * ...
1),delete from tablename where id not in (select max(id) from tablename group by col1,col2,...) 2),select distinct * into temp from tablename delete from tablename insert into tablename select * ...
1),delete from tablename where id not in (select max(id) from tablename group by col1,col2,...) 2),select distinct * into temp from tablename delete from tablename insert into tablename select * ...
* 根据已有的表创建新表:CREATE TABLE tab_new LIKE tab_old 或 CREATE TABLE tab_new AS SELECT col1, col2... FROM tab_old DEFINITION ONLY * 删除表:DROP TABLE tabname 列操作 * 增加一个列:ALTER TABLE ...
2. **最小化结果集**:在编写SQL查询时,避免无谓的全表扫描,只选择必要的列,例如使用`SELECT COL1, COL2 FROM T1`而非`SELECT * FROM T1`。同时,如果可能,限制返回的行数,如`SELECT TOP 300 COL1, COL2, COL3 ...
4. **创建新表**:`CREATE TABLE tabname (col1 type1 [NOT NULL] [PRIMARY KEY], col2 type2 [NOT NULL],...)`,此命令创建一个新表,并指定列名和数据类型。`NOT NULL`表示该字段不允许为空,`PRIMARY KEY`定义了...
例如,在编写SQL查询时,避免使用`SELECT * FROM T1`这样的语句,而应该明确指定所需的列,如`SELECT COL1, COL2 FROM T1`。 3. **分离操作**:将不同的操作分开处理,而不是在一个复杂的查询中完成所有工作。这样...
GROUP BY t.col1, t.col2 ); ``` **优点:** - 效率更高,特别是在处理大量重复记录时。 - 减少了显性的比较条件,提高了查询性能。 **缺点:** - 如果每条记录有多个重复项,需要适当调整 SQL 语句。 ##### 4...
SQL 函数是结构化查询语言(Structured Query Language)中的一种重要组成部分,它们可以对数据进行处理、转换和计算,以便更好地存储、管理和检索数据。SQL 函数可以分为多种类型,每种类型都有其特定的功能和用途...
- 错误示例:`SELECT col1, col2 INTO #t FROM t WHERE 1 = 0;` - 正确示例:`CREATE TABLE #t ();` #### 12. 使用`EXISTS`代替`IN` - `EXISTS`通常比`IN`更高效,因为它可以在找到第一个匹配项后停止搜索。 - ...
- **排序**:`SELECT * FROM table1 ORDER BY field1, field2 [DESC]` 对结果进行排序。 - **计数**:`SELECT COUNT(*) AS totalcount FROM table1` 计算行数。 - **求和**、**平均**、**最大**、**最小**:分别...
(可选)压缩SQL以最小化空间 正在安装 $ npm install pg-minify 用法 const minify = require ( 'pg-minify' ) ; const sql = 'SELECT 1; -- comments' ; minify ( sql ) ; //=> SELECT 1; 压缩(删除所有不必要的...
FROM (VALUES (1, 'a1'), (1, 'a2'), (2, 'b1'), (2, 'b2')) t(num, col) GROUP BY num; ``` #### 3. 字符串分割:`regexp_split_to_table` `regexp_split_to_table` 函数可以按照正则表达式来分割字符串。 ```sql ...
SQL> select ln(1),ln(2),ln(2.7182818) from dual; LN(1) LN(2) LN(2.7182818) --------- --------- ------------- 0 .69314718 .99999999 25.LOG(n1,n2) 返回一个以n1为底n2的对数 SQL> select log(2,1),log(2,4)...