1 代码 1.1 当当前字段为空,查询结果返回“none”,并且统计出现频率 select case when 字段 is null then 'none' else 字段 end as 字段, count(1) as counts from 表 group by 字段; 1.2 当当前字段为空字符串,查询结果返回“none”,并且统计出现频率 select case when 字段= '' then 'none' else 字段 end as 字段, count(1) as counts fr
有同事问我上述问题,我把我的实现思路写出来.子查询把查询的结果和默认的结果全部显示.父查询通过伪列rownum来筛选,如果查询有结果,就有几条就显示几条,而不去显示子查询中的默认值:如果查询没有结果,那就把默认值显示出来 举例: select * from (select table_name from user_tables where rownum < 3union allselect 'default' from dual ) where rownum <= (select case (
/* 存在外键的表 删表限制: 1.先删除从表,再删除主表.(不能直接删除主表,主表被从表引用,尽管实际可能还没有记录引用) 建表限制: 1.必须先建主表,再建从表(没有主表,从表无法建立外键关系) */ DROP TABLE IF EXISTS employee; DROP TABLE IF EXISTS department; CREATE TABLE department( id INT PRIMARY KEY, name ) UNIQUE NOT NULL ); -- 建表时,添加外键
数据操作 插入数据(记录): 用insert: 补充:插入查询结果: insert into 表名(字段1,字段2,...字段n) select (字段1,字段2,...字段n) where ...; 更新数据update 语法: update 表名 set 字段1=值1,字段2=值2 where condition; 删除数据delete:delete from 表名 where condition; 查询数据select: 单表查询: 语法: select distinct 字段1,字段2.
<!-- 环境: Windows 2003 SP2 + MySQL5.5.28 Author: 博客园小dee --> 有的时候需要把在一张表中用 select 语句查询出来的结果保存到另一张结构相同的表中,可以有几种方法来实现: 方法一: 在命令行下使用一对SQL语句完成该操作: 导出查询结果:Select语句 into outfile '保存路径+文件名'; 导入查询结果:load data local infile '保存路径+文件名' into table 表明 character s