查询是SQL语言的核心,SQL语言只提供唯一一个用于数据库查询的语句,即SELECT语句。用于表达SQL查询的SELECT语句是功能最强也是最复杂的SQL语句,它提供了很多选项和使用方法。SELECT语句的命令格式如下:
SELECT查询语句是由七个子句构成,其中SELECT和FROM子句是一个完整SELECT查询语句必须要有的,其它的子句可以根据具体需要任选。上述的每个子句功能说明如下:
(1)SELECT子句
列出所有要求SELECT语句进行检索的数据项,这些项可能取自数据库中关系表的列,也可以是SQL在执行查询时进行计算的表达式。这里的ALL和DISTINCT选项,表示查询出的结果中是否容许有内容重复的行出现,缺省时是ALL项,表示容许有重复的行出现,而*则表示查询出所指定关系表中所有的列。
(2)FROM子句
FROM子句列出包含所要查询的数据关系表。
(3)WHERE子句
WHERE子句告诉SQL只查询某些关系表中满足一定要求的行的数据,查询要求由WHERE子句中的查询条件确定。
(4)GROUP BY子句
GROUP BY子句指定当前查询是汇总查询,即不是对根据每行产生一个查询结果,而是对相似的行进行分组,然后再对每组产生一个汇总查询的结果。
(5)HAVING子句
HAVING子句告诉SQL只对由GROUP BY所得到的某些行组的结果进行过滤,选择出满足分组条件的分组。
(6)ORDER BY子句
ORDER BY子句确定是否将查询出的结果按一列或多列中的数据进行排序,缺省时是不排序的。
(7)INTO子句
INTO子句确定是否将查询出的结果存入一张新的关系表中,缺省时只将查询出现的结果显示在屏幕上。这是非标准SELECT语句中的子句,但目前绝大多数实际应用的SQL数据库系统的SQL语言提供了这一选项。
下面是一些使用SELECT查询语句进行数据查询的示例。
例1:列出销售额超过6000元的销售人员的姓名、销售目标和超过销售目标的销售额。
SELECT NAME,QUOTA,(SALES_QUOTA)
FROM SALESREPS
WHERE SALES>6000
例2:查出1999年最后一个季度的订单情况。
SELECT ORDER_NUM,ORDER_DATE,PRODUCT,AMOUNT
FROM ORDERS
WHERE ORDER_DATE BETWEEN "01-OCT-99" AND "31-DEC-99"
例3:查出名称是以ABC开头的产品订单情况。
SELECT ORDER_NUM,ORDER_DATE,PRODUCT,AMOUNT
FROM ORDERS
WHERE PRODUCT LIKE "ABC%"
例4:列出所有的销售处,按区域名字母顺序排列。
SELECT CITY,REGION
FROM OFFICE
ORDER BY REGION ASC
在这里ASC表示升序,如果表示降序可用DESC。
例5:列出每个销售人员以及他们工作的城市和区域的情况。
SELECT NAME,CITY,REGION
FROM SALESREPS,OFFICE
WHERE REP_OFFICE=OFFICE
例6:查出有多少销售员的销售额超过了其目标额,以及他们的销售额总和。
SELECT COUNT(NAME),SUM(SALES)
FROM SALESREPS
WHERE SALES>QUOTA
2. sql语句,查询数据库里除了某一条记录外的所有记录。
1、打开sql server 可视化工具。
3. SQL语句怎么查询在某日期之前的数据
工具/材料:Management Studio。
1、首先在桌面上,点击“Management Studio”图标。
4. sql语句 查询记录数
sql中查询记录数用count函数。
1、创建测试表,插入数据:
createtabletest
(idint)
insertintotestvalues(1)
insertintotestvalues(2)
insertintotestvalues(3)
insertintotestvalues(null)
2、查询记录数为两种,一种是count(*),一种是count(字段值):
测试一:
selectcount(*)fromtest
结果:
说明:如果count(字段名)的字段中含有空值,则在count中不计数,而count(*)则是查询全部的行数。
5. SQL语句查询数据库中所有记录
查询一个数据库中的所有表sql语句是show
tables;
显示所有数据库的命令是:show
databases;要查看某个数据库先要进入数据库使用user
命令;进入数据库之后才能查询数据库中有哪些表。使用以下命令即可查出所有表:
show
tables;
(5)sql查询原始记录扩展阅读
mysql数据库的基本sql操作命令介绍:
1、显示当前数据库服务器中的数据库列表:mysql>
SHOW
DATABASES;
2、建立数据库:mysql>
CREATE
DATABASE
库名;
3、建立数据表:mysql>
USE
库名;mysql>
CREATE
TABLE
表名
(字段名
VARCHAR(20),
字
名
CHAR(1));
4、删除数据库:mysql>
DROP
DATABASE
库名;
5、删除数据表:mysql>
DROP
TABLE
表名;
6、将表中记录清空:mysql>
DELETE
FROM
表名;
7、往表中插入记录:mysql>
INSERT
INTO
表名
VALUES
("hyq","M");
8、更新表中数据:mysql->
UPDATE
表名
SET
字段名1='a',字段名2='b'
WHERE
字段名3='c';
9、用文本方式将数据装入数据表中:mysql>
load
data
local
infile
"d:/mysql.txt"
into
table
表名;
10、导入.sql文件命令:mysql>
USE
数据库名;mysql>
source
d:/mysql.sql;
6. 在SQL中怎么查询一条记录
查询表记录的语句一般就是select * from 【表名】 where 【条件】;任何数据库入门的书上都有。
如果查不到那你先查看一下你的这个表是不是属于你当前登录数据库的用户的(以oracle为例):
select * from user_tables where table_name='A' 如果没有结果,那即使你用上述select * from A where ID=Y;也查不到的。
7. sql如何查询表的第一条记录和最后一条记录
第一条: select * from 表名 limit 1;(默认是升序排序,取第一条)
最后一条:select * from表名 order by 表_id desc limit 1(降序排序取第一条)
8. sql语句查询某字段的数据总和,并列出表中的所有记录。
1、首先,创建一个测试表,相关代码如下,进入下一步。
9. sql如何查询历史同期记录
历年来所有日期相同的记录...
就是说每年的同一个月同一天就是相同的记录吧?
思路是在日期中截取月份,天数。对这两项进行比较。
1 怎样截取:DATE类型或VARCHAR类型的截取方式不同,具体你可以查;
2 查询天数和月份都相同的ID,再根据ID查询完整的记录
以上只是思路.....
10. 在SQL语句中,如何实现查询当月数据和当年数据
select * from yh.zsxx where to_char(rkrq,'yyyy-mm') = to_char(sysdate,'yyyy-mm') ——当月数据
select * from yh.zsxx where to_char(rkrq,'yyyy') = to_char(sysdate,'yyyy')——当年珊瑚橘