MYSQL
查询语句+LIMIT+10
取查询记录的前十条。
如:SELECT
*
FROM
Test
LIMIT
10
查询语句+LIMIT+2,10
取查询语句,从第二条记录,取十条记录。
如:SELECT
*
FROM
Test
LIMIT
2,10
B. SQL语句如何取前10条,10-30条记录
常用几种数据库,取前10条记录的sql语句写法。
access:
select top (10) * from table1 where 1=1
db2:
select column from table where 1=1 fetch first 10 rows only
mysql:
select * from table1 where 1=1 limit 10
sql server:
读取前10条:select top (10) * from table1 where 1=1
读取后10条:select top (10) * from table1 order by id desc
oracle:
select * from table1 where rownum<=10
取10-30条的记录:
select top 20 * from 表名 where id not in(select top 10 id from 表名)
(2)sql语句常用五十条扩展阅读:
使用SQL从表中取记录。
SQL的主要功能之一是实现数据库查询。如果你熟悉Internet 引擎,那么你已经熟悉查询了。你使用查询来取得满足特定条件的信息。
多数Internet 引擎允许逻辑查询。在逻辑查询中,你可以包括特殊的运算符如AND、OR和NOT,你使用这些运算符来选择特定的记录。
如果需要扩展查询的结果,可以使用逻辑操作符OR。例如,如果执行一个搜索,搜索所有的其描述中包含Active Sever Pages OR SQL的站点,收到的列表中将包括所有其描述中同时包含两个表达式或其中任何一个表达式的站点。
如果想从搜索结果中排除特定的站点,可以使用NOT。例如,查询“Active Sever Pages ”AND NOT “SQL”将返回一个列表,列表中的站点包含Active Sever Pages,但不包含SQL。当必须排除特定的记录时,可以使用NOT。
用SQL执行的查询与用Internet搜索引擎执行的搜索非常相似。 当执行一个SQL查询时,通过使用包括逻辑运算符的查询条件,你可以得到一个记录列表。此时查询结果是来自一个或多个表。
C. sql 常用语句
增
insert
into
表名
(字段1,
字段2,字段3,字段4,...)
values(字段1的值,
字段2的值,字段3的值,字段4的值,...)
删
delete
from
表名
where
条件
改
update
表名
set
字段1
=
字段1的值,
字段2
=
字段2的值,
字段3
=
字段3的值,...
(逗号分隔)
查
select
*
from
表名
where
条件
D. 常用SQL语句大全
常用的也好多啊,更多主到:
http://dev.yesky.com/msdn/433/7573933.shtml
--数据操作
SELECT
--从数据库表中检索数据行和列
INSERT
--向数据库表添加新数据行
DELETE
--从数据库表中删除数据行
UPDATE
--更新数据库表中的数据
--数据定义
CREATE
TABLE
--创建一个数据库表
DROP
TABLE
--从数据库中删除表
ALTER
TABLE
--修改数据库表结构
CREATE
VIEW
--创建一个视图
DROP
VIEW
--从数据库中删除视图
CREATE
INDEX
--为数据库表创建一个索引
DROP
INDEX
--从数据库中删除索引
CREATE
PROCEDURE
--创建一个存储过程
DROP
PROCEDURE
--从数据库中删除存储过程
CREATE
TRIGGER
--创建一个触发器
DROP
TRIGGER
--从数据库中删除触发器
CREATE
SCHEMA
--向数据库添加一个新模式
DROP
SCHEMA
--从数据库中删除一个模式
CREATE
DOMAIN
--创建一个数据值域
ALTER
DOMAIN
--改变域定义
DROP
DOMAIN
--从数据库中删除一个域
--数据控制
GRANT
--授予用户访问权限
DENY
--拒绝用户访问
REVOKE
--解除用户访问权限
--事务控制
COMMIT
--结束当前事务
ROLLBACK
--中止当前事务
SET
TRANSACTION
--定义当前事务数据访问特征
--程序化SQL
DECLARE
--为查询设定游标
EXPLAN
--为查询描述数据访问计划
OPEN
--检索查询结果打开一个游标
FETCH
--检索一行查询结果
CLOSE
--关闭游标
PREPARE
--为动态执行准备SQL
语句
EXECUTE
--动态地执行SQL
语句
DESCRIBE
--描述准备好的查询
---局部变量
declare
@id
char(10)
--set
@id
=
'10010001'
select
@id
=
'10010001'
---全局变量
---必须以@@开头
--IF
ELSE
E. SQL 常用语句大全。要系统答案,不要粘贴的一大堆!
(1)数据记录筛选:
select * from 数据表 where 字段名=字段值 orderby 字段名 [desc]
select * from 数据表 where 字段名 like'%字段值%' orderby 字段名 [desc]
select top 10 * from 数据表 where 字段名 order by 字段名 [desc]
select* from 数据表 where 字段名 in ('值1','值2','值3')
select* from 数据表 where 字段名 between 值1 and 值2
(2)更新数据记录:
update 数据表 set 字段名=字段值 where 条件表达式
update 数据表 set 字段1=值1,字段2=值2……字段n=值n where 条件表达式
(3)删除数据记录:
delete from 数据表 where 条件表达式
delete from 数据表 (将数据表所有记录删除)
(4)添加数据记录:
insert into 数据表(字段1,字段2,字段3…) values (值1,值2,值3…)
insert into 目标数据表 select * from 源数据表 (把源数据表的记录添加到目标数据表)
(5)数据记录统计函数:
AVG(字段名)得出一个表格栏平均值
COUNT(*|字段名)对数据行数的统计或对某一栏有值的数据行数统计
MAX(字段名)取得一个表格栏最大的值
MIN(字段名)取得一个表格栏最小的值
SUM(字段名)把数据栏的值相加
(5)数据表的建立和删除:
CREATE TABLE 数据表名称 (字段1类型1(长度),字段2类型2(长度)……)
例:CREATE TABLE tab01 (name varchar (50), datetimedefaultnow ())
DROP TABLE 数据表名称 (永久性删除一个数据表)
F. 常用sql语句
1. 查看数据库的版本
select @@version
2. 查看数据库所在机器操作系统参数
exec master..xp_msver
3. 查看数据库启动的参数
sp_configure
4. 查看数据库启动时间
select convert(varchar(30),login_time,120) from master..sysprocesses where spid=1
查看数据库服务器名和实例名
print 'Server Name...............:' + convert(varchar(30),@@SERVERNAME)
print 'Instance..................:' + convert(varchar(30),@@SERVICENAME)
5. 查看所有数据库名称及大小
sp_helpdb
重命名数据库用的SQL
sp_renamedb 'old_dbname', 'new_dbname'
6. 查看所有数据库用户登录信息
sp_helplogins
查看所有数据库用户所属的角色信息
sp_helpsrvrolemember
修复迁移服务器时孤立用户时,可以用的fix_orphan_user脚本或者LoneUser过程
更改某个数据对象的用户属主
sp_changeobjectowner [@objectname =] 'object', [@newowner =] 'owner'
注意:更改对象名的任一部分都可能破坏脚本和存储过程。
把一台服务器上的数据库用户登录信息备份出来可以用add_login_to_aserver脚本
查看某数据库下,对象级用户权限
sp_helprotect
7. 查看链接服务器
sp_helplinkedsrvlogin
查看远端数据库用户登录信息
sp_helpremotelogin
8.查看某数据库下某个数据对象的大小
sp_spaceused @objname
还可以用sp_toptables过程看最大的N(默认为50)个表
查看某数据库下某个数据对象的索引信息
sp_helpindex @objname
还可以用SP_NChelpindex过程查看更详细的索引情况
SP_NChelpindex @objname
clustered索引是把记录按物理顺序排列的,索引占的空间比较少。
对键值DML操作十分频繁的表我建议用非clustered索引和约束,fillfactor参数都用默认值。
查看某数据库下某个数据对象的的约束信息
sp_helpconstraint @objname
9.查看数据库里所有的存储过程和函数
use @database_name
sp_stored_proceres
查看存储过程和函数的源代码
sp_helptext '@procere_name'
查看包含某个字符串@str的数据对象名称
select distinct object_name(id) from syscomments where text like '%@str%'
创建加密的存储过程或函数在AS前面加WITH ENCRYPTION参数
解密加密过的存储过程和函数可以用sp_decrypt过程
10.查看数据库里用户和进程的信息
sp_who
查看SQL Server数据库里的活动用户和进程的信息
sp_who 'active'
查看SQL Server数据库里的锁的情况
sp_lock
进程号1--50是SQL Server系统内部用的,进程号大于50的才是用户的连接进程.
spid是进程编号,dbid是数据库编号,objid是数据对象编号
查看进程正在执行的SQL语句
dbcc inputbuffer ()
推荐大家用经过改进后的sp_who3过程可以直接看到进程运行的SQL语句
sp_who3
检查死锁用sp_who_lock过程
sp_who_lock
11.查看和收缩数据库日志文件的方法
查看所有数据库日志文件大小
dbcc sqlperf(logspace)
如果某些日志文件较大,收缩简单恢复模式数据库日志,收缩后@database_name_log的大小单位为M
backup log @database_name with no_log
dbcc shrinkfile (@database_name_log, 5)
12.分析SQL Server SQL 语句的方法:
set statistics time {on | off}
set statistics io {on | off}
图形方式显示查询执行计划
在查询分析器->查询->显示估计的评估计划(D)-Ctrl-L 或者点击工具栏里的图形
文本方式显示查询执行计划
set showplan_all {on | off}
set showplan_text { on | off }
set statistics profile { on | off }
13.出现不一致错误时,NT事件查看器里出3624号错误,修复数据库的方法
先注释掉应用程序里引用的出现不一致性错误的表,然后在备份或其它机器上先恢复然后做修复操作
alter database [@error_database_name] set single_user
修复出现不一致错误的表
dbcc checktable('@error_table_name',repair_allow_data_loss)
或者可惜选择修复出现不一致错误的小型数据库名
dbcc checkdb('@error_database_name',repair_allow_data_loss)
alter database [@error_database_name] set multi_user
CHECKDB 有3个参数:
repair_allow_data_loss 包括对行和页进行分配和取消分配以改正分配错误、结构行或页的错误,以及删除已损坏的文本对象,这些修复可能会导致一些数据丢失。
修复操作可以在用户事务下完成以允许用户回滚所做的更改。
如果回滚修复,则数据库仍会含有错误,应该从备份进行恢复。
如果由于所提供修复等级的缘故遗漏某个错误的修复,则将遗漏任何取决于该修复的修复。
修复完成后,请备份数据库。
repai*_**st 进行小的、不耗时的修复操作,如修复非聚集索引中的附加键。
这些修复可以很快完成,并且不会有丢失数据的危险。
repair_rebuild 执行由 repai*_**st 完成的所有修复,包括需要较长时间的修复(如重建索引)。
执行这些修复时不会有丢失数据的危险。
添加、删除、修改使用db.Execute(Sql)命令执行操作
╔--------------------╗
☆ 数据记录筛选 ☆
╚--------------------╝
注意:单双引号的用法可能有误(没有测式)
Sql = "Select Distinct 字段名 From 数据表"
Distinct函数,查询数据库存表内不重复的记录
Sql = "Select Count(*) From 数据表 where 字段名1>#18:0:0# and 字段名1< #19:00# "
count函数,查询数库表内有多少条记录,“字段名1”是指同一字段
例:
set rs=conn.execute("select count(id) as idnum from news")
response.write rs("idnum")
sql="select * from 数据表 where 字段名 between 值1 and 值2"
Sql="select * from 数据表 where 字段名 between #2003-8-10# and #2003-8-12#"
在日期类数值为2003-8-10 19:55:08 的字段里查找2003-8-10至2003-8-12的所有记录,而不管是几点几分。
select * from tb_name where datetime between #2003-8-10# and #2003-8-12#
字段里面的数据格式为:2003-8-10 19:55:08,通过sql查出2003-8-10至2003-8-12的所有纪录,而不管是几点几分。
Sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]"
Sql="select * from 数据表 where 字段名 like '%字段值%' order by 字段名 [desc]"
模糊查询
Sql="select top 10 * from 数据表 where 字段名 order by 字段名 [desc]"
查找数据库中前10记录
Sql="select top n * form 数据表 order by newid()"
随机取出数据库中的若干条记录的方法
top n,n就是要取出的记录数
Sql="select * from 数据表 where 字段名 in ('值1','值2','值3')"
╔--------------------╗
☆ 添加数据记录 ☆
╚--------------------╝
sql="insert into 数据表 (字段1,字段2,字段3 …) valuess (值1,值2,值3 …)"
sql="insert into 数据表 valuess (值1,值2,值3 …)"
不指定具体字段名表示将按照数据表中字段的顺序,依次添加
sql="insert into 目标数据表 select * from 源数据表"
把源数据表的记录添加到目标数据表
╔--------------------╗
☆ 更新数据记录 ☆
╚--------------------╝
Sql="update 数据表 set 字段名=字段值 where 条件表达式"
Sql="update 数据表 set 字段1=值1,字段2=值2 …… 字段n=值n where 条件表达式"
Sql="update 数据表 set 字段1=值1,字段2=值2 …… 字段n=值n "
没有条件则更新整个数据表中的指定字段值
╔--------------------╗
☆ 删除数据记录 ☆
╚--------------------╝
Sql="delete from 数据表 where 条件表达式"
Sql="delete from 数据表"
没有条件将删除数据表中所有记录)
╔--------------------------╗
☆ 数据记录统计函数 ☆
╚--------------------------╝
AVG(字段名) 得出一个表格栏平均值
COUNT(*|字段名) 对数据行数的统计或对某一栏有值的数据行数统计
MAX(字段名) 取得一个表格栏最大的值
MIN(字段名) 取得一个表格栏最小的值
SUM(字段名) 把数据栏的值相加
引用以上函数的方法:
sql="select sum(字段名) as 别名 from 数据表 where 条件表达式"
set rs=conn.excute(sql)
用 rs("别名") 获取统的计值,其它函数运用同上。
╔-----------------------------╗
☆ 数据表的建立和删除 ☆
╚-----------------------------╝
CREATE TABLE 数据表名称(字段1 类型1(长度),字段2 类型2(长度) …… )
例:CREATE TABLE tab01(name varchar(50),datetime default now())
DROP TABLE 数据表名称 (永久性删除一个数据表)
╔--------------------------╗
☆ 记录集对象的方法 ☆
╚--------------------------╝
rs.movenext 将记录指针从当前的位置向下移一行
rs.moveprevious 将记录指针从当前的位置向上移一行
rs.movefirst 将记录指针移到数据表第一行
rs.movelast 将记录指针移到数据表最后一行
rs.absoluteposition=N 将记录指针移到数据表第N行
rs.absolutepage=N 将记录指针移到第N页的第一行
rs.pagesize=N 设置每页为N条记录
rs.pagecount 根据 pagesize 的设置返回总页数
rs.recordcount 返回记录总数
rs.bof 返回记录指针是否超出数据表首端,true表示是,false为否
rs.eof 返回记录指针是否超出数据表末端,true表示是,false为否
rs.delete 删除当前记录,但记录指针不会向下移动
rs.addnew 添加记录到数据表末端
rs.update 更新数据表记录
G. 常见的SQL语句有哪些
(1)更新数据记录:
sql="update数据表set字段名=字段值where条件表达式"
sql="update数据表set字段1=值1,字段2=值2……字段n=值nwhere条件表达式"
(2)添加数据记录:
sql="insertinto数据表(字段1,字段2,字段3…)values(值1,值2,值3…)"
sql="insertinto目标数据表select*from源数据表"(把源数据表的记录添加到目标数据表)
(3)删除数据记录:
sql="deletefrom数据表where条件表达式"
sql="deletefrom数据表"(将数据表所有记录删除)
(4)数据记录筛选:
sql="select*from数据表where字段名=字段值orderby字段名[desc]"
sql="select*from数据表where字段名like'%字段值%'orderby字段名[desc]"
sql="selecttop10*from数据表where字段名orderby字段名[desc]"
sql="select*from数据表where字段名in('值1','值2','值3')"
sql="select*from数据表where字段名between值1and值2"
(5)数据表的建立和删除:
CREATETABLE数据表名称(字段1类型1(长度),字段2类型2(长度)……)
例:CREATETABLEtab01 (namevarchar (50), datetimedefaultnow ())
DROPTABLE数据表名称(永久性删除一个数据表)
(6)数据记录统计函数:
AVG(字段名)得出一个表格栏平均值
COUNT(*|字段名)对数据行数的统计或对某一栏有值的数据行数统计
MAX(字段名)取得一个表格栏最大的值
MIN(字段名)取得一个表格栏最小的值
SUM(字段名)把数据栏的值相加
引用以上函数的方法:
sql="selectsum(字段名)as别名from数据表where条件表达式"
setrs=conn.excute(sql)
用rs("别名")获取统的计值,其它函数运用同上。
(6)复制数据库的表
select * into 新表名 from 要复制的表的表名 where 1=2
要完全复制把where 1=2 去了就可以了
(7)删除某个表的一个列
alter table bankbill drop column zsl
alter table xx alter/add/drop column xx
(8)模糊查询
Sql="select top 10 * from 数据表 where 字段名 order by 字段名 [desc]"
查找数据库中前10记录
Sql="select top n * form 数据表 order by newid()"
随机取出数据库中的若干条记录的方法
top n,n就是要取出的记录数
Sql="select * from 数据表 where 字段名 in ('值1','值2','值3')"
H. 数据库中常用的sql语句有哪些
1.检索数据
SELECT prod_nameFROM Procts;
#检索单列
SELECT prod_id, prod_name, prod_priceFROMProcts;
#检索多列
SELECT * FROM Procts;
#检索所有列
SELECT DISTINCTvend_id FROMProcts;
#检索不同的值
SELECTprod_name FROM Procts LIMIT 5;
#返回不超过5行数据
SELECTprod_name FROM Procts LIMIT 5 OFFSET 5;
#返回从第5行起的5行数据。LIMIT指定返回的行数,LIMIT带的OFFSET指定从哪儿开始。
2.排序检索数据
SELECTprod_name
FROMProcts
ORDER BYprod_name;
#排序数据
SELECT prod_id, prod_price, prod_name
FROMProcts
ORDER BY prod_price, prod_name;
#按多个列排序
SELECT prod_id, prod_price, prod_name
FROMProcts
ORDER BY 2, 3;
#按列位置排序,第三行表示先按prod_price, 再按prod_name进行排序
SELECT prod_id, prod_price, prod_name
FROMProcts
ORDER BY prod_priceDESC, prod_name;
#prod_price列以降序排序,而prod_name列(在每个价格内)仍然按标准的升序排序
3.过滤数据
SELECT prod_name, prod_price
FROMProcts
WHERE prod_price< 10;
#检查单个值
SELECT prod_name, prod_price
FROMProcts
WHERE vend_id <> ‘DLL01’;
#不匹配检查
SELECT prod_name, prod_price
FROMProcts
WHERE prod_priceBETWEEN 5 AND 10;
#范围值检查
SELECT cust_name
FROMCUSTOMERS
WHERE cust_emailIS NULL;
#空值检查
4.高级数据过滤
SELECTprod_id, prod_price, prod_name
FROMProcts
WHERE vend_id = ‘DLL01’ANDprod_price <= 4;
#AND操作符
SELECTprod_name, prod_price
FROMProcts
WHEREvend_id=’DLL01’ OR vend_id=’BRS01’;
#OR操作符
SELECTprod_name, prod_price
FROMProcts
WHERE (vend_id = ’DLL01’ORvend_id=’BRS01’)
ANDprod_price >= 10;
#求值顺序 AND的优先级高于OR
SELECTprod_name, prod_price
FROMProcts
WHERE vend_idIN (‘DLL01’,’BRS01’)
ORDER BY prod_name;
#IN操作符
SELECT prod_name
FROMProcts
WHERE NOTvend_id = ‘DLL01’
ORDER BY prod_name;
#NOT 操作符
SELECT prod_name
FROMProcts
WHEREvend_id <> ‘DLL01’
ORDER BY prod_name;
#NOT 操作符
I. 常用标准SQL语句..
SELECT --从数据库表中检索数据行和列
INSERT --向数据库表添加新数据行
DELETE --从数据库表中删除数据行
UPDATE --更新数据库表中的数据
--数据定义
CREATE TABLE --创建一个数据库表
DROP TABLE --从数据库中删除表
ALTER TABLE --修改数据库表结构
CREATE VIEW --创建一个视图
DROP VIEW --从数据库中删除视图
CREATE INDEX --为数据库表创建一个索引
DROP INDEX --从数据库中删除索引
CREATE PROCEDURE --创建一个存储过程
DROP PROCEDURE --从数据库中删除存储过程
CREATE TRIGGER --创建一个触发器
DROP TRIGGER --从数据库中删除触发器
select语句(查询语句):
select *
from table1, table2 where table1.id *= table2.id//查询table1和table2 中id相等的记录
select stockname from table2//查询表table2中字段tockname中的值
insert语句(插入语句):
insert into table1(Stock_name,Stock_number) value (select Stockname , Stocknumber from Stock_table2)//向表table1中Stock_name和Stock_number字段插入数据,value括号里面即为你要插入的值
update语句(更新语句):
update table1 set Stockname = "xxx" where Stockid = 3//把table1中的Stockid = 3改成Stockname = "xxx"
delete语句(删除语句):
delete from table_name where Stockid = 3
//删除Stockid = 3这条记录
drop table table_name //删除表table_name
J. sql 一条语句 显示 第5条~10条的数据
举个例子, student 表,查询按name排序后的第5到第10个name
SQL Server
SELECTnameFROM()s
EXCEPT
SELECTnameFROM()s