SQL WHERE的用法
我们并不一定每一次都要将表格内的资料都完全抓出。在许多时候,我们会需要选择性地抓资料。就我们的例子来说,我们可能只要抓出营业额超过 $1,000 的资料。要做到这一点,我们就需要用到 WHERE 这个指令。这个指令的语法如下:
SELECT "栏位名"
from "表格名"
WHERE "条件"
若我们要由以下的表格抓出营业额超过 $1,000 的资料,
Store_Information
store_name
Sales
Date
Los Angeles
$1500
Jan-05-1999
San Diego
$250
Jan-07-1999
Los Angeles
$300
Jan-08-1999
Boston
$700
Jan-08-1999
表格
我们就打入,
SELECT store_name
from Store_Information
WHERE Sales > 1000
结果:
store_name
Los Angeles
相关文档:
execute immediate 语法
后面跟上sql语句可以动态执行sql语句.
使用场景:
(1)加入动态表.比如你有一张表的名字不明确,是需要判断得到的,则可以使用该语法来生成sql语句.
(2)加入动态字段.你根据判断,最终会加入同一张表,但是这张表根据不同的判断字段会有所不同,此时如果直接写sql是加不进去的,必须使用动态sql语句,让o ......
以下是经测验能正确运行的:
create table t_emp_log212
(
who varchar2(10) not null,
action varchar2(10) not null,
actime date
);
create or replace trigger tri_emp_insert
before insert
on t_emp
begin
insert into t_emp_log(who,action,actime)values(user,'insert',sysdate);
end ......
假设如下应用:
两张表——用户表TDefUser(userid,address,phone)和消费表TAccConsume(userid,time,amount),需要查消费超过5000的用户记录。
用exists:
select * from TDefUser
where exists (select 1 from TAccConsume where TDefUser.userid=TAccConsume.userid and TAccConsume.amount>5000)
用i ......
首先请看
http://topic.csdn.net/u/20070821/15/8a2dac05-51b8-4eb1-b41d-4fbe8a232c85.html
帖中从实际问题出发,讨论SQL语句中如何表示除法运算。
以下是问题的给出与简要描述:
表A:商店信息
ANO, ANAME, WQTY, CITY
101, 韶山书店, 15, 长沙
204, 前门商店, 89, 北京
256 ......
[摘]在SQL中删除重复记录的多种方法
本文总结了一些删除重复记录的方法,在Oracle中,可以通过唯一rowid实现删除重复记录;还可以建临时表来实现...这里只提到其中的几种简单实用的方法,希望可以和大家分享(以表employee为例)。
SQL> desc employee
Name   ......