易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 : sql

SQL查询语句精华

 一、 简单查询
简单的Transact-SQL查询只包括选择列表、from子句和WHERE子句。它们分别说明所查询列、查询的
表或视图、以及搜索条件等。
例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。
SELECT nickname,email
from testtable
WHERE name='张三'
(一) 选择列表
选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变
量和全局变量)等构成。
1、选择所有列
例如,下面语句显示testtable表中所有列的数据:
SELECT *
from testtable
2、选择部分列并指定它们的显示次序
查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。
例如:
SELECT nickname,email
from testtable
3、更改列标题
在选择列表中,可重新指定列标题。定义格式为:
列标题=列名
列名 列标题
如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列
标题:
SELECT 昵称=nickname,电子邮件=email
from testtable
4、删除重复行
SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的 ......

SQL语句效率问题的几点总结

 1. SQL优化的原则是:
  将一次操作需要读取的BLOCK数减到最低,即在最短的时间达到最大的数据吞吐量。  
  调整不良SQL通常可以从以下几点切入:  
  检查不良的SQL,考虑其写法是否还有可优化内容  
  检查子查询   考虑SQL子查询是否可以用简单连接的方式进行重新书写  
  检查优化索引的使用  
  考虑数据库的优化器  
   
2. 避免出现SELECT   *   from   table     语句,要明确查出的字段。    
   
3. 在一个SQL语句中,如果一个where条件过滤的数据库记录越多,
    定位越准确,则该where条件越应该前移。  
   
4. 查询时尽可能使用索引覆盖。即对SELECT的字段建立复合索引,
    这样查询时只进行索引扫描,不读取数据块。  
   
5. 在判断有无符合条件的记录时建议不要用SELECT   COUNT   (*)和select ......

Oracle常用SQL语句(PL/SQL developer工具下的)

 建表
create table users(
id number(4) primary key,
username varchar2(10),
password varchar2(10)
)
查询表并解锁表(即可以点击输入框下面的"锁"图标工具, 即"Edit data")
select * from users for update
删除表中多余的列
alter table mobilephone drop column mobiletype
转载
-----------------------------------------------------------------------------------------------
oracle操作语句:
1.创建表
create table 表名(
 列名1 类型,
 列名2 类型
);
2.修改类属性
alter table 表名 modify(列名 类型);
3.添加列
alter table 表名 add(列名 类型);
4.添加主键约束和非空约束
alter table 表名 add constraint pk_表名 primary key(列名);
alter table 表名 modify(列名 not null);
5.删除主键约束
alter table 表名 drop primary key;
alter table 表名 drop constraint pk_表名;
6.失效约束
alter table 表名 disable primary key;
alter table 表名 disable constraint pk_表名;
7.有效约束
alter table 表名 enable primary key;
alter table 表名 enable constraint pk_表名;
8 ......

Oracle常用SQL语句(PL/SQL developer工具下的)

 建表
create table users(
id number(4) primary key,
username varchar2(10),
password varchar2(10)
)
查询表并解锁表(即可以点击输入框下面的"锁"图标工具, 即"Edit data")
select * from users for update
删除表中多余的列
alter table mobilephone drop column mobiletype
转载
-----------------------------------------------------------------------------------------------
oracle操作语句:
1.创建表
create table 表名(
 列名1 类型,
 列名2 类型
);
2.修改类属性
alter table 表名 modify(列名 类型);
3.添加列
alter table 表名 add(列名 类型);
4.添加主键约束和非空约束
alter table 表名 add constraint pk_表名 primary key(列名);
alter table 表名 modify(列名 not null);
5.删除主键约束
alter table 表名 drop primary key;
alter table 表名 drop constraint pk_表名;
6.失效约束
alter table 表名 disable primary key;
alter table 表名 disable constraint pk_表名;
7.有效约束
alter table 表名 enable primary key;
alter table 表名 enable constraint pk_表名;
8 ......

SQL Update语句的执行顺序

执行顺序:从左到右,变量优先,逐行更新
 摘自CSDN的例子(http://topic.csdn.net/u/20091030/16/7fd75fa6-bdb9-4516-9b27-48aef69703ba.html
http://topic.csdn.net/u/20090904/16/e5dad9c7-fb59-41b9-b28d-e3b71c3e8420.html)
1.变量优先
create table #t (field1 varchar(10),field2 varchar(10))
insert #t select 'a','b'
declare @str varchar(10)
set @str='Test'
update #t set Field1=@str,@str=Field2,Field2=Field1
select * from #t
drop table #t
/*field1     field2
---------- ----------
b          a*/
2.逐步更新
if OBJECT_ID('ta') is not null drop table ta
create table ta(empNo varchar(8) ,empName varchar(20),nIndex int)  --drop table ta
insert into ta
select 'A0001','張三',null
union
select 'A0002','李四',null
union
select 'A0003','王二',null
union
select 'A0004','趑六',null
declare @tmpIndex int
set @tmpIndex=0
update ta set nIndex=@tmpIndex,@tmpIndex=@tmpIndex+1
select * from ta
/*
empNo & ......

SQL语句大法

 SQL语言由命令、子句、运算和集合函数等构成。在SQL中,数据定义语言DDL(用来建立及定义数据表、字段以及索引等数据库结构)包含的命令有CREATE、DROP、ALTER;数据操纵语言DML(用来提供数据的查询、排序以及筛选数据等功能)包含的命令有SELECT、INSERT、UPDATE、DELETE。
一、SQL语句
(1)Select 查询语句
语法:SELECT [ALL|DISTINCT] <目标列表达式> [AS 列名]
[,<目标列表达式> [AS 列名] ...] from <表名> [,<表名>…]
[WHERE <条件表达式> [AND|OR <条件表达式>...]
[GROUP BY 列名 [HAVING <条件表达式>>
[ORDER BY 列名 [ASC | DESC>
解释:[ALL|DISTINCT]   ALL:全部; DISTINCT:不包括重复行
<目标列表达式> 对字段可使用AVG、COUNT、SUM、MIN、MAX、运算符等
<条件表达式>
查询条件 谓词
比较 =、>,<,>=,<=,!=,<>,
确定范围 BETWEEN AND、NOT BETWEEN AND
确定集合 IN、NOT IN
字符匹配 LIKE(“%”匹配任何长度,“_”匹配一个字符)、NOT LIKE
空值 IS NULL、IS NOT NULL
子查询 ANY、ALL、EXISTS
集合查询 UNIO ......

ORACLE PL/SQL 记录(Record)学习笔记(一)

在PL/SQL程序设计中,有三种定义记录类型的方法:一种是使用%ROWTYPE属性;另一种是在PL/SQL程序的声明部分显示定义记录类型;最后一种方法是将记录类型定义为数据库结构或对象类型。
我先简单的介绍一个下面要用到的表的结构(黑体标明的字段为主键):
INDIVIDUALS表
 
INDIVIDUAL ID
FIRST NAME
MIDDLE_INITIAL
LAST_NAME
 
ADDRESSES表
 
ADDRESS ID
INDIVIDUAL ID
STREET_ADDRESS1
STREET_ADDRESS1
STREET_ADDRESS1
CITY
STATE
POSTAL_CODE
COUNTRY_CODE
 
TELEPHONES表
 
TELEPHONE ID
INDIVIDUAL ID
ADDRESS_ID
TELEPHONE_TYPE
TELEPHONE_NUMBER
 
一、记录类型的定义和使用
 
1、使用%ROWTYPE属性隐式定义记录类型
可以使用%ROWTYPE属性引用PL/SQL游标、数据库中的表、对象或视图,%ROWTYPE属性继承了这些对象的行定义。在用%ROWTYPE属性定义的行中,所有字段都是根据与之相关的表列的数据类型隐式定义的。字段名称也就是表中的列名。
通过使用点语法隔开记录变量名称和记录的字段名,我们就可以分别访问记录的各个字段。
如下例所示:
DECLARE
-- Define a variable with an implicit recor ......

ORACLE PL/SQL 记录(Record)学习笔记(一)

在PL/SQL程序设计中,有三种定义记录类型的方法:一种是使用%ROWTYPE属性;另一种是在PL/SQL程序的声明部分显示定义记录类型;最后一种方法是将记录类型定义为数据库结构或对象类型。
我先简单的介绍一个下面要用到的表的结构(黑体标明的字段为主键):
INDIVIDUALS表
 
INDIVIDUAL ID
FIRST NAME
MIDDLE_INITIAL
LAST_NAME
 
ADDRESSES表
 
ADDRESS ID
INDIVIDUAL ID
STREET_ADDRESS1
STREET_ADDRESS1
STREET_ADDRESS1
CITY
STATE
POSTAL_CODE
COUNTRY_CODE
 
TELEPHONES表
 
TELEPHONE ID
INDIVIDUAL ID
ADDRESS_ID
TELEPHONE_TYPE
TELEPHONE_NUMBER
 
一、记录类型的定义和使用
 
1、使用%ROWTYPE属性隐式定义记录类型
可以使用%ROWTYPE属性引用PL/SQL游标、数据库中的表、对象或视图,%ROWTYPE属性继承了这些对象的行定义。在用%ROWTYPE属性定义的行中,所有字段都是根据与之相关的表列的数据类型隐式定义的。字段名称也就是表中的列名。
通过使用点语法隔开记录变量名称和记录的字段名,我们就可以分别访问记录的各个字段。
如下例所示:
DECLARE
-- Define a variable with an implicit recor ......
总记录数:4346; 总页数:725; 每页6 条; 首页 上一页 [618] [619] [620] [621] 622 [623] [624] [625] [626] [627]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号