数据库基础语句及面试题

查询语句 : select (查询属性) from (表名) where (约束)
插入语句 : insert into 表名(属性) values(具体值)
删除语句 : delete from (表名) where (约束)
修改语句 : update (表名) set (属性)  where (约束)

(1)mysql表中test选择10~20条关键字记录
   --select *
   --from test 
   --limit 9,11;  (limit 关键字的使用)
   

(2)数据库中有学院表和成绩表。
   学院表 t_school 结构如下: 学院ID school_id, 学院名称 school_name;
   成绩表 t_score 结构如下: 学号 id  姓名:name  分数:score  学院ID: school_id
   请用 SQL 语句查询出学院名称为"计算机系",分数最高,前20位的学生姓名。
 
   --select S.name
   --from t_school R, t_score S
   --where R.school_id=S.school_id and R.school_name="计算机系"
   --order by S.score DESC LIMIT 20  (ACS 降序,order by 排序语句)
 
(3)在SQL中,一个表的定义如下;
    CREATE TABLE t_account{
        account varchar(100),
		account_type  TINYTEEXT,
		PRIMARY KEY (account)
	};
	
	account为账号,account_type为该账号的类型,写出一个SQL,
	统计账号数累计超过5000个账号类型,并显示对应的账号数,
	即结果中每行是(账号类型,账号数)
	
	--select account_type,count(account)
	--from t_account
	--group by  account_type
	--having count(account)>5000  (group by  分组函数,having 函数运算的限制条件)
	

(4)设有关系EMP(ENO, ENAME, SALARY, DNO),其中各属性的含义依次为职工号,姓名,工资
   和所在部门号,以及关系 DEPT(DNO, DNAME, MANAGER),其中各属性含义依次为部门号
   部门名称,部门经理和职工号。请回答下列的问题:
        (1) 列出各部门中工资不低于 600 元的职工的平均工资。
		(2) 请用SQL 语句将"销售部"的那些工资数额低于600的职工工资上调 10%。
	
	1.
	--select DNO , AVG(SALARY)
	--from EMP
	--where SALARY >= 600
	--group by DNO

	2.
	--update EMP
	--set SALARY = SALARY*1.1
	--where SALARY<600 
	--AND DNO = (select DNO from DEPT where DNAME="销售部")

你可能感兴趣的:(数据库)