查询语句-select from table;
select from table where 条件1=数值 and 条件2=数值;
select from table where id in (select id from table);两表关联
select aa,bb,cc from table1 a,table2 b,table3 c where aid1=bid2;
插入语句-insert into table (字段1,字段2,字段3,……)
values (数值1,数值2,数值3,……);
更新语句-update 表名 set 数值 where=id = 1;
添加列语句-alter table 表名
add (列名1 类型1,列名2 类型2,列名3 类型3,……);
查询随机20条记录-select from( select from emp order by dbms_randomvalue) where rownum <= 10;
修改列类型-alter table 表名
modify (列名1 类型1,列名2 类型2,列名3 类型3,……);
删除列语句-alter table 表名
drop column 列名s;
显示查询时间-set timing on;
删除表语句-deltet table 表名;
清空表数据-truncate table 表名;
修改列名 - ALTER TABLE emp RENAME COLUMN comm TO newa;
集合查询(无重复):select from table_name union
select from table_name;
集合查询(有重复):select from table_name union all
select from table_name;
差 集 查 询:select from table_name minus
select from table_name;
--------------------------------------------------------------------------------
运行脚本-start d:\文件名sql;
编辑脚本-edit d:\文件名sql;
另存为脚本-spool d:\文件sql;
select from emp;
spool off;
分页显示-set pagesize 页数;
行数显示-set linesize 行数;
创建用户-create user 用户名 identified by 密码;(需要SYS/SYSTEM权限才能建立用户)
赋予权限-grant resource to 用户名;(建表权限)
赋予查询权限-grant select on emp to 用户名;
赋予修改权限-grant update on emp to 用户名;
赋予所有访问权限-grant all on emp to 用户名;
--------------------------------------------------------
收回查询权限-revoke select on emp from 用户名;
传递权限-grant select on emp to 用户名2 with grant option;
账户锁定-
creata profile 名称 limit failed_login_attcmpts 输入次数限制 password_lock_time 锁定天数;
------------------------------DBA权限登录
alter user 想要锁定的用户名 profile 名称;
------------------------------DBA权限登录
解锁用户锁定-alter user 用户名 account unlock;
定期修改密码-create profile 名字 limit password_life_time 天数 password_grace_time 宽限天数;
切换用户-conn system/密码;
更改密码-password 用户名;
删除用户-drop user 用户名 cascade(删除用户及用户建立的所有表);
查询同样结构两表中的不同数据-select from emp_tmp where empno not in(select empno from emp);
select from v$session;
select from v$version;
定义函数:
---------函数说明 函数是计算数字平方;
FUNCTION y2
(inx2 number)
return number is
Result number(2);
begin
Result := inx2inx2;
return(Result);
end y2;
---------函数说明 函数是输入汉字然后输出拼音;
FUNCTION HZ
(inputStr in VARCHAR2)
RETURN VARCHAR2 iS
outputStr varchar2(10);
BEGIN
SELECT c_spell INTO outputStr FROM BASE$CHINESE WHERE C_WORD = inputStr;
RETURN outputStr;
END hz;
----------函数说明 函数是计算累加自然月;
FUNCTION month
(inmonth number,
inaddmonth number)
return varchar2 is
Result varchar2(6);
begin
Result :=substr(to_char(add_months(to_date(inmonth,'yyyymm'),inaddmonth),'yyyymmdd'),1,6);
return(Result);
end month;
select to_char(add_months(trunc(sysdate),-1),'yyyymmdd') from dual;--取上个月的日期;
select to_char((sysdate-30),'yyyymmdd') from dual; ---去当前日期前30天日期;
ORACLE 随机数
DBMS_RANDOMVALUE(low IN NUMBER,high IN NUMBER) RETURN NUMBER;
select round(dbms_randomvalue(x,x)) from dual;
ORACLE 取当前时间并按毫秒计算
select systimestamp from dual;
select from cda_datasource---中继表
1、打开Microsoft SQL Server 2012,选中需要查询所有表的数据库。
2、选中需要查询的表后,点击左上角的“新建查询”,如图。
3、点击“新建查询”后,会在右边d出一个编辑框,我们需要在这里编写sql语句,来查询该数据库下的所有表结构。
4、编写sql语句,点击“执行”,当然,这表语句我们可以根据实际情况,来改变条件只查询需要的表名。
5、这时,会在右下方出现最终的查询结果,name即该库下所有的表名。
打开SQL Server Management Studio 界面。法1:单击工具栏的“新建查询”;方法2:或右击数据库名称-》“新建查询”;方法3:选中数据表-》编写表脚本为-》SELECT到-》新查询编辑器窗口。在数据库对象下拉框中选择“BooksDB”,在查询编辑器输入区中输入Transact-SQL语句,然后点击工具栏或“查询”菜单中的“!执行”,执行输入区的Transact-SQL语句
使用语句查询需要有sql基础,但有一定水准以后才能熟练应用,这里只说一下使用access中sql视图的方法:
1、打开access的文件
2、点击上方菜单栏的创建-查询设计
3、d出的小窗口点关闭
4、在上半部空白处点右键,选择sql视图
这样就可以使用sql语句进行查询了
例子:
//建立数据库连接对象sc
SqlConnection sc = new SqlConnection();
//数据库连接字符串
scConnectionString = "server=;database=wangjun;uid=sa;pwd=sqlserver";
//打开数据库
scOpen();
ConsoleWriteLine("已经连接");
//数据库命令对象字符串
string sql = "select rtrim(学号),rtrim(姓名),rtrim(性别),rtrim(总分),rtrim(address),rtrim(所属院系) from student";
//新建数据库命令对象
SqlCommand cmd = new SqlCommand(sql,sc);
//新建数据集对象reader 并得到命令对象读取的结果集
SqlDataReader reader = cmdExecuteReader();
//使用循环输出数据集中的数据
while (readerRead())
{
ConsoleWriteLine("{0} | {1} | {2}| {3} | {4} | {5}",reader[0],reader[1],reader[2],reader[3],reader[4],reader[5]);
}
还可以用SqlDataAdapter 然后填充到dataset里面
然后对dataset *** 作即可
一、增:有2种方法
1使用insert插入单行数据:
语法:insert [into] <表名> [列名] values <列值>
例:insert into Strdents (姓名,性别,出生日期) values ('王伟华','男','1983/6/15')
注意:如果省略表名,将依次插入所有列
2使用insert,select语句将现有表中的 数据添加到已有的新表中
语法:insert into <已有的新表> <列名> select <原表列名> from <原表名>
例:insert into addressList ('姓名','地址','电子邮件')select name,address,email
from Strdents
注意:查询得到的数据个数、顺序、数据类型等,必须与插入的项保持一致
二、删:有2中方法
1使用delete删除数据某些数据
语法:delete from <表名> [where <删除条件>]
例:delete from a where name='王伟华'(删除表a中列值为王伟华的行)
注意:删除整行不是删除单个字段,所以在delete后面不能出现字段名
2使用truncate table 删除整个表的数据
语法:truncate table <表名>
例:truncate table addressList
注意:删除表的所有行,但表的结构、列、约束、索引等不会被删除;不能
用于有外建约束引用的表
三、改使用update更新修改数据
语法:update <表名> set <列名=更新值> [where <更新条件>]
例:update addressList set 年龄=18 where 姓名='王伟华'
注意:set后面可以紧随多个数据列的更新值(非数字要引号);where子句是可选的(非数字要引号),用来限制条件,如果不选则整个表的所有行都被更新
四、查
语法:select <列名> from <表名> [where <查询条件表达试>] [order by <排序的列
名>[asc或desc]]
1)查询所有数据行和列
例:select from a
说明:查询a表中所有行和
2)查询部分行列--条件查询
例:select i,j,k from a where f=5
说明:查询表a中f=5的所有行,并显示i,j,k3列
3)在查询中使用AS更改列名
例:select name as 姓名 from a where gender='男'
说明:查询a表中性别为男的所有行,显示name列,并将name列改名为(姓名)显示
4)查询空行
例:select name from a where email is null
说明:查询表a中email为空的所有行,并显示name列;SQL语句中用is null或者is not null
来判断是否为空行
5)在查询中使用常量
例:select name '北京' as 地址 from a
说明:查询表a,显示name列,并添加地址列,其列值都为'北京'
6)查询返回限制行数(关键字:top )
例1:select top 6 name from a
说明:查询表a,显示列name的前6行,top为关键字(oracle 中没有top关键字
用rownum替代)
select from a where rownum<6
7)查询排序(关键字:order by , asc , desc)
例:select name
from a
where grade>=60
order by desc
说明:查询表中成绩大于等于60的所有行,并按降序显示name列;默认为ASC升序
以上就是关于SQL数据库查询语句,包括增,删,改,查等所有语句详细。全部的内容,包括:SQL数据库查询语句,包括增,删,改,查等所有语句详细。、怎样用SQL语句查询一个数据库中的所有表、怎么在sql server中写查询语句等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)