PLSQL学习简易快速入门概要1.docx
文本预览下载声明
?PLSQL学习简易快速入门课程?一?PL/SQL?基本查询与排序 本课重点: 1、写SELECT语句进行数据库查询 2、进行数学运算 3、处理空值 4、使用别名ALIASES 5、连接列 6、在SQL PLUS中编辑缓冲,修改SQL SCRIPTS 7、ORDER BY进行排序输出。 8、使用WHERE?字段。 一、写SQL?命令: 不区分大小写。 SQL?语句用数字分行,在SQL PLUS中被称为缓冲区。 最后以;或?/?结束语句。 也可以用RUN来执行语句 二、例1:SQL?SELECT dept_id, last_name, manager_id???FROM s_emp; 2:SQL?SELECT last_name, salary * 12, commission_pct? FROM s_emp; 对于数值或日期型的字段,可以进行相应的四则运算,优先级与标准的高级语言相同。 SQL SELECT last_name, salary, 12 * (salary + 100)??FROM s_emp; 三、列的别名ALIASES: 计算的时候特别有用; 紧跟着列名,或在列名与别名之间加“AS”; 如果别名中含有SPACE,特殊字符,或大小写,要用双引号引起。 例(因字体原因,读者请记住:引号为英文双引号Double Quotation): SQL SELECT last_name, salary, 12 * (salary + 100)?”Annual Salary”??FROM s_emp; 四、连接符号:|| 连接不同的列或连接字符串 使结果成为一个有意义的短语: SQL?SELECT first_name ||?’?’?|| last_name ||?’,?’|| title?”Employees”?FROM s_empSQL?select divid || || divname from pub_t_division_test where superid=001效果如下图:??? 五、管理NULL值: SQL?SELECT last_name, title, salary * NVL(commission_pct,0)/100 COMM FROM s_emp; 此函数使NULL转化为有意义的一个值,相当于替换NULL。select divid,divname,NVL(addr,0) from pub_t_division_test where superid=001效果如下图: 六、SQL PLUS的基本内容,请参考SQL PLUS?简单实用精髓篇? 七、ORDER BY?操作: 与其他SQL92标准数据库相似,排序如: SELECT expr FROM table [ORDER BY {column,expr} [ASC|DESC]]; 从Oracle7 release?7.0.16开始,ORDER BY?可以用别名。 另:通过位置判断排序: SQL?SELECT??last_name, salary*12???FROM s_emp??ORDER BY 2;select?*?from?pub_t_division_test?where?superid=001??order?by?3 这样就避免了再写一次很长的表达式。 另:多列排序: SQL?SELECT last name, dept_id, salary??FROM s_emp??ORDER BY dept_id, salary DESC;SQLselect * from pub_t_division_test where superid=001??order by 1,3??desc? 八、限制选取行: SELECT expr FROM table [WHERE condition(s)] [ORDER BY expr]; 例1: SQL?SELECT first_name, last_name, start_date FROM s_emp??WHERE start_date BETWEEN?’09-may-91????????????????????????????????????????????????????????????????????????????AND?’17-jun-91’; 例2: SQL SELECT last_name FROM s_emp WHERE last_name LIKE?
显示全部