1. sql如何查询语句的格式怎么写
VF常用SQL语句大全
SQL是结构化查询语言,查询是SQL语言的重要组成部分,但不是全部,SQL还包括数据定义,数据操纵和数据控制功能等部分.如今SQL已成为关系数据库的标准数据语言,所以现在的关系数据库管理系统都支持SQL.FOXPRO从2.5 FOR DOS版式就开始支持SQL,现在VISUAL FOXPRO当然在之方面更加完善,以下是VF经常用到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 --从数据库中删除触发器
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
---全局变量
---必须以@@开头
希望对你有帮助~~~
2. sql语句查询求助
这个涉及到业务逻辑,一条sql是无法完成的,可能会用到临时表。你的具体逻辑中如果每次只有一条例子中的数据变成几条记录,这还可行,如果是每次多条记录变成多条记录,通过sql效率不会高。
3. SQL Server 数据库查询语句的语法有哪些
一、 简单查询简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的表或视图、以及搜索条件等。例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。SELECT nickname,emailFROM testtableWHERE name='张三' (一) 选择列表选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。1、选择所有列例如,下面语句显示testtable表中所有列的数据:SELECT *FROM testtable 2、选择部分列并指定它们的显示次序查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。例如:SELECT nickname,emailFROM testtable 3、更改列标题在选择列表中,可重新指定列标题。定义格式为:列标题=列名列名 列标题如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列标题:SELECT 昵称=nickname,电子邮件=emailFROM testtable 4、删除重复行SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。5、限制返回的行数使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n是表示一百分数,指定返回的行数等于总行数的百分之几。例如:SELECT TOP 2 *FROM testtable SELECT TOP 20 PERCENT * FROM testtable(二)FROM子句FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图,它们之间用逗号分隔。在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列所属的表或视图。例如在usertable和citytable表中同时存在cityid列,在查询两个表中的cityid时应使用下面语句格式加以限定:SELECT username,citytable.cityidFROM usertable,citytableWHERE usertable.
4. 数据库SQL查询语句的几个问题,求解答
select cno,cn from COURSE c where cno exists(
select distinct s.cno from SC s, TEACHERS t where s.tno = t.tno and t.tno='05')select sno,sn from STUDENTS where dept="外语系"age <select min(age) from STUDENTS where dept='信息系'
union
select sno,sn from STUDENTS where dept="计算机系"age <select min(age) from STUDENTS where dept='信息系'
union ...
select cno,num from COUTSE cinner join(select cno,count(cno) as num from SC
group by cno
having count(cno) > 2) bon c.cno = b.cno
5. sql数据库语句查询
select p.xingming,p.xingbie,p.nianling from pxsgs p where p.gongsi='上海第二公司' and p.bumen='上瓷部' and (p.xingming='李雷' or p.xingming='张秋林')
6. 使用SQL语句创建并测试数据库的难点和注意事项是什么
首先说说怎么用SQL语句创建数据库,创建数据库的语句有如下几种:
1. CREATE TABLE(创建新表)
2. CREATE INDEX(增加索引)
3. DROP INDEX(删除索引)
4. CONSTRAINT(约束语句)
5. ALTER TABLE(修改表)
6. DROP TABLE(删除表)
CREATE TABLE语句:
在数据库中生成新表,表中字段的类型能够为:INTEGER(整型)、LONG(长整型)、 SINGLE(单精度浮点数)、DOUBLE(双精度浮点数)、DATETIME(日期型,也能够写成DATE)、BIT(布尔型)、 TEXT(字符串型,最大255个字节)、MEMO(字符串型,最大可达1.2G字节)、 COUNTER(自动递增长整型,可确定记录的唯一性)、CURRENCY(货币型,精确到小数点左边15位,右边4位)、 BINARY(字节型,最大255个)、LONGBINARY(用于OLE对象)、GUID(全局唯一标识符)。
生成表NewTable,该表有文本字段Field1和整型字段Field2,表名和字段名能够随便您取,不区分大小写,但是,有些保留字不能用作表名字段名,比如Number
CREATE TABLE NewTable(Field1 TEXT(30), Field2 INTEGER);
CREATE INDEX语句:
INDEX是为了加快查找记录的速度,或是为了增加字段约束关系而配置的。
创建索引语句执行前表中能够有记录,但存在的记录必须满足该索引语句的约束关系,否则语句不能执行,另外要注意的是在同一个数据库中(而不但仅是在同一个表中),索引名不能相同,否则语句也会失败。
生成字段Field1的索引字段NewIndex,两条语句作用相同
生成后Field1字段能够有相同的值,能够有空值(NULL)
CREATE INDEX NewIndex ON NewTable (Field1);
CREATE INDEX NewIndex ON NewTable (Field1) WITH IGNORE NULL;
生成字段Field1的索引字段NewIndex,注意,每个表里只能有一个主索引(PRIMARY)。生成后Field1字段不能有相同的值,不能有空值(当然,假如是TEXT类型,能够有一个空串,但是空串不是空值)
CREATE INDEX NewIndex ON NewTable(Field1) WITH PRIMARY;
字段Field1不能有相同的值,但能够有空值(两个空值不算相同的值)
CREATE UNIQUE INDEX NewIndex ON NewTable(Field1);
字段Field1能够有相同的值,但不能有空值
CREATE INDEX NewIndex ON NewTable(Field2) WITH DISALLOW NULL
能够在索引语句中加入ASC(升序)或DESC(降序)来控制记录排列顺序假如不使用顺序字,SQL则默认使用ASC顺序
CREATE INDEX NewIndex ON NewTable(Field1 ASC, Field2 DESC);
DROP INDEX语句:
删除表NewTable中的索引NewIndex,语句执行前索引NewIndex必须存在
DROP INDEX NewIndex ON NewTable;
CONSTRAINT语句:
CONSTRAINT子句用于创建数据库完整性的索引,他和INDEX语句作用相同,有些地方能够互相替代,他能够使用PRIMARY KEY(主关键字),UNIQUE(唯一)和FOREIGN KEY(外部关键字),和INDEX相比不能使用IGNOR NULL和DISALLOW NULL,但多了FOREIGN KEY(这也是他最强大的地方)。另外, CONSTRAINT语句必须和CREATE TABLE或ALTER TABLE语句一起使用。
生成表NewTable,主关键字段是Field1,主索引是NewPK
CREATE TABLE NewTable(Field1 LONG CONSTRAINT NewPK PRIMARY KEY, Field2 MEMO, Field3 DATETIME);
生成索引为NewUK的表NewTable,Field1不能有相同值,能够有空值
CREATE TABLE NewTable(Field1 INTEGER CONSTRAINT NewUK UNIQUE);
生成多列的主索引,两条记录的Field1和Field2不能全部相同,也不能为空值
CREATE TABLE NewTable(Field1 INTEGER, Field2 CURRENCY, CONSTRAINT NewPK PRIMARY KEY(Field1, Field2));
生成多列的UNIQUE索引,两条记录的Field1和Field2不能全部相同注意,假如两条记录其中一个字段相同而另一个字段都是空值,那也算两个字段不同
CREATE TABLE NewTable(Field1 INTEGER, Field2 CURRENCY, CONSTRAINT NewUK UNIQUE(Field1, Field2));
要在几个不同的表之间建立联系,就要使用FOREIGN KEY REFERENCES子句,他能够限定某个表的字段内容必须存在于另外一个表中。
第一个例子:
首先,生成主关键字段为Field1的表NewTable1
CREATE TABLE NewTable1(Field1 INTEGER CONSTRAINT NewPK PRIMARY KEY);
然后,再生成外部索引,两个表的Field1必须类型相同,并且第一个表的Field1是主关键字段或UNIQUE字段。生成外部索引后,表NewTable2要增加记录,他的Field1字段值必须已存在于表NewTable1的Field1字段中。
下面两条语句作用相同,因为Field1是NewTable1的主关键字段,能够省略不写
CREATE TABLE NewTable2(Field1 INTEGER CONSTRAINT NewFK REFERENCES NewTable1);
CREATE TABLE NewTable2(Field1 INTEGER CONSTRAINT NewFK REFERENCES NewTable1(Field1));
第二个例子:
首先,生成主关键字段为Field1和Field2的表NewTable1
CREATE TABLE NewTable1(Field1 INTEGER, Field2 TEXT(20), CONSTRAINT NewPK PRIMARY KEY(Field1, Field2));
然后,生成多列外部索引
CREATE TABLE NewTable2(Field1 INTEGER, Field2 TEXT(20), CONSTRAINT NewFK FOREIGN KEY(Field1, Field2) REFERENCES NewTable1(Field1, Field2));
ALTER TABLE语句:
在表生成之后,假如想修改表的结构,就使用这条语句,他能增加或删除字段连同约束关系。
给表NewTable增加日期型字段Field3,语句执行前表NewTalbe必须没有字段Field3
ALTER TABLE NewTable ADD COLUMN Field3 DATE;
删除表NewTable中的字段Field3,语句执行前字段Field3必须存在表NewTable中
ALTER TABLE NewTable DROP COLUMN Field3;
给表NewTable增加NewUK约束关系
ALTER TABLE NewTable ADD CONSTRAINT NewUK UNIQUE(Field1,Field2);
删除表NewTable的NewUK约束关系
ALTER TABLE NewTable DROP CONSTRAINT NewUK;
DROP TABLE语句:
删除表NewTable,语句执行前表NewTable必须存在
DROP TABLE NewTable;
7. SQL语句中 between and
SELECT * FROM 表名 where 列名 between '2012-02' and '2012-03' or 列名 between '2012-06' and '2012-07'。
示例如下:
拓展资料:
SQL DML 和 DDL:
可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL)。
SQL (结构化查询语言)是用于执行查询的语法。但是 SQL 语言也包含用于更新、插入和删除记录的语法。
查询和更新指令构成了 SQL 的 DML 部分:
SELECT - 从数据库表中获取数据
UPDATE - 更新数据库表中的数据
DELETE - 从数据库表中删除数据
INSERT INTO - 向数据库表中插入数据
CREATE DATABASE - 创建新数据库
ALTER DATABASE - 修改数据库
CREATE TABLE - 创建新表
ALTER TABLE - 变更(改变)数据库表
DROP TABLE - 删除表
CREATE INDEX - 创建索引(搜索键)
DROP INDEX - 删除索引
SQL 中最重要的 DDL 语句:
8. 怎样用SQL语句查询一个数据库中的所有表
查询数据库里所有表名和字段名的语句
SQL 查询所有表名:
SELECT NAME FROM SYSOBJECTS WHERE TYPE='U'
SELECT * FROM INFORMATION_SCHEMA.TABLES
结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;
sql 语句就是对数据库进行操作的一种语言。
(8)sql语句查询数据注意事项扩展阅读:
SQL语句常见语句:
1、更新:update table1 set field1=value1 where 范围;
2、查找:select * from table1 where field1 like ’%value1%’ (所有包含‘value1’这个模式的字符串);
3、排序:select * from table1 order by field1,field2 [desc];
4、求和:select sum(field1) as sumvalue from table1;
5、平均:select avg(field1) as avgvalue from table1;
6、最大:select max(field1) as maxvalue from table1;
7、最小:select min(field1) as minvalue from table1[separator]。
参考资料来源:网络-sql语句