疑难杂症 - SQL语句整理】的更多相关文章

一.关联子查询-查日期最新列 前天在工作中遇到一条非常有用的SQL语句,想了好久愣是没搞出来.今天将这个问题模拟出来:先看表 需求是,对于每个人,仅显示时间最新的那一条记录. 答案如下: select * from record as a where not exists (select null from record as b where a.Name = b.Name and a.CreateTime < b.CreateTime) 结果如下: 这个问题的关键难点在于,既要去除重复,又要显…
/* 标题:一个项目涉及到的50个Sql语句(整理版) 说明:以下五十个语句都按照测试数据进行过测试,最好每次只单独运行一个语句. */ --1.学生表Student(S,Sname,Sage,Ssex) --S 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别 --2.课程表 Course(C,Cname,T) --C --课程编号,Cname 课程名称,T 教师编号--3.教师表 Teacher(T,Tname) --T 教师编号,Tname 教师姓名 --4.成绩表…
## 常用sql语句整理:mysql1. 增- 增加一张表```CREATE TABLE `table_name`(  ...  )ENGINE=InnoDB DEFAULT CHARSET=utf8;```- 增加记录```INSERT INTO `your_table_name`(`column_name`)VALUES('your_value_one'),('your_value_two');```- 增加字段```ALTER TABLE `your_table_name`ADD `you…
Oracle数据库常用的Sql语句整理 查看当前用户的缺省表空间 : select username,default_tablespace from user_users; 2.查看用户下所有的表 : select * from user_tables; 3.创建表空间 :CREATE TABLESPACE invocie DATAFILE '/data/InvoiceData/invoicebak/invocie_01.dbf' Size 4096M AUTOEXTEND OFF: CREAT…
本篇文章是对一些常用的sql语句进行了总结与分析,需要的朋友参考下,也许会有你需要的. 1.SQL行列转换 问题:假设有张学生成绩表(tb)如下:姓名 课程 分数张三 语文 74张三 数学 83张三 物理 93李四 语文 74李四 数学 84李四 物理 94想变成(得到如下结果): 姓名 语文 数学 物理 ---- ---- ---- ----李四 74 84 94张三 74 83 93 sql语句为: select 姓名 as 姓名 , max(case 课程 when '语文' then 分…
前言: 这是我学数据库时整理的学习资料,基本上包括了所以的SQL语句的知识点. 我的教材是人大王珊老师的<数据库系统概论>. 因为是手打的,所以会用一些细节打错了,但都挺明显也不多(考完试后我也没有继续整理). 1. 模式 SCHEMA CREATE SCEMA <模式名> AUTHORIZATION <用户名>; eg: CREATE SCEMA"S-T" AUTHORIZATION WANG; Note: 用户可以在定义模式的同时创建基本表.视图…
前言: 这是我学数据库时整理的学习资料,基本上包括了所以的SQL语句的知识点. 我的教材是人大王珊老师的<数据库系统概论>. 因为是手打的,所以会用一些细节打错了,但都挺明显也不多(考完试后我也没有继续整理). SELECT [ALL|DISTINCT] <目标列表达式> [,<目标列表达式> ]...FROM <表名或视图名> [ ,<表名或视图名> ] | (<SELECT语句>) [AS] <别名>[ WHERE &…
--1查找系统用户基本信息 SELECT user_id, user_name, description, employeE_id, person_party_id FROM fnd_user; --3查找所有的interface表 SELECT * FROM dba_objects db WHERE db.object_type = 'TABLE' AND db.object_name LIKE '%INTERFACE%'; --4查找对应模块的interface表 SELECT * FROM…
安装MySQL有两种的方式,一种是解压版本,但是需要配置环境变量,相对而言比较麻烦.所以我们一般采取第二种方式,那就是到MySQL的官网上下载安装版.这样就会省去很多麻烦,在这里我就不再详细的介绍具体的安装过程了,百度一下,Google,上面有手把手的教程.好了话不多说,让我们开始我们今天的话题--MySQL的操作语句 首先打开MySQL的客户端会让你输入你安装时设置的密码,这样的好处是保护你的数据库的安全性,这就在一定程度上避免了他人对你的数据库的恶意操作.输入正确的密码后就会进入我们的MyS…
很多情况下使用工具对mssql注入并不完善,所以我们就需要手工注入,一下是本人收集的一些mssql的sql语句. 手工MSSQL注入常用SQL语句 and exists (select * from sysobjects) //判断是否是MSSQL and exists(select * from tableName) //判断某表是否存在..tableName为表名 and 1=(select @@VERSION) //MSSQL版本 And 1=(select db_name()) //当前…
-- DBA/ALL/USER/V_$/GV_$/SESSION/INDEX开头的绝大部分都是视图 -- DBA_TABLES意为DBA拥有的或可以访问的所有的关系表. -- ALL_TABLES意为某一用户拥有的或可以访问的所有的关系表. -- USER_TABLES意为某一用户所拥有的所有的关系表. -- 当某一用户本身就为数据库DBA时,DBA_TABLES与ALL_TABLES等价. -- DBA_TABLES >= ALL_TABLES >= USER_TABLES -- 需要注意的…
1. 存储过程 CREATE PROCEDURE [dbo].[bbs_move_createtopic] @fid smallint, @iconid smallint, @curtid INT OUTPUT AS BEGIN INSERT INTO [topics] ...... SET @topicid=SCOPE_IDENTITY() END declare @curtid int , @curtid=@curr_topicid OUTPUT 2. 游标 DECLARE ), @id D…
1.       /*  SQL CASE 语句写法 * SELECT TABLE1.USER_ID, TABLE1.COMP_CODE, TABLE1.DEPT_CODE, TABLE1.USER_NAME, TABLE2.COMP_NAME, TABLE3.DEPT_NAME, (case when (TABLE1.ADMIN_YN = '1') then '管理员' else  '普通用户' end) as USER, TABLE1.ADMIN_YN */ 2.         Repla…
THEN '月卡' THEN '周卡' THEN '季度卡' THEN '年卡' ELSE '未知卡类型' END AS '卡类型' FROM SL_Register_Info Left join用法 LEFT JOIN 关键字语法 SELECT column_name(s) FROM table_name1 LEFT JOIN table_name2 ON table_name1.column_name=table_name2.column_name 注释:在某些数据库中, LEFT JOIN…
查看执行计划 explain update test100 set contractSn=99 where contractSn=45; insert ... on duplicate key使用 insert into 表名(f1, f2, Count, LastUpdateTime) , , , xxx) ; mysql表示boolean使用类型:`FieldName` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否XXX',相关1:mybatis 连…
建表 先讲一下常规建表: CREATE TABLE testCreate ( id ) NOT NULL auto_increment, time ) NOT NULL, type ) NOT NULL, name ) default null, ) NOT NULL, PRIMARY KEY(id), index(id), index(type) )ENGINE=INNODB DEFAULT CHARSET=utf8; 设置主键.自增.默认值及不太常见的将索引放在建表的操作中,下面要提到的是从…
1.事务(基本) GO BEGIN TRY BEGIN TRAN -- 导入数据 COMMIT TRAN END TRY BEGIN CATCH ROLLBACK TRAN END CATCH GO 2.替换ntext,text.ntext不能直接使用replace函数,所以要转化为nvarchar(max),nvarchar(max)可以存储2G的东西,可以满足一般的需求. update dbo.News set ContentText=replace(convert(nvarchar(max…
一下语句都是基于 mysql数据库 查询是否使用索引 explain  select * FROM t_table1; 结果列的含义: table:此次查询操作是关联哪张数据表 type:连接查询操作类型,一般根据索引查询的话为const,如果没有索引,则遍历所有数据那么为All(此种方式效率极低)    possible_keys:显示可能应用在这张表中的索引.如果为空,没有可能的索引. key: 实际使用的索引.如果为NULL,则没有使用索引. key_len:使用的索引的长度.在不损失精确…
use Person <--添加约束--> Alter table Student alter column Sno ) not null; Alter table Student Add constraint uq_sno unique(Sno); Alter table Student Add constraint C_sex check(Ssex in('男','女')); Alter table Student Add constraint df_Sage Default for Sa…
1.开/关 外键约束 -- 关 SET FOREIGN_KEY_CHECKS = 0; -- 开 SET FOREIGN_KEY_CHECKS = 1; 2.查看表的容量大小 use information_schema; SELECT (`DATA_LENGTH`+ `INDEX_LENGTH`)/1024/1024/1024 as `table_data_size` from `TABLES` WHERE TABLE_NAME ='t_dragon_temperature_capture_f…
1.输入参数为单个值 <delete id="com.fashionfree.stat.accesslog.deleteMemberAccessLogsBefore" parameterClass="long"> delete from MemberAccessLog where accessTimestamp = #value# </delete> <delete id="com.fashionfree.stat.acces…
做了一段时间的性能测试,把自己在性能测试过程中,使用到的Oracle中用到的sql语句整理一番,做个备忘: (1)多个字段以某种格式拼接 Oracle方式:"||"字符串拼接符; 示例:将“id”及“code”用逗号拼接: select t.id||','||t.code from OTable t; MySQL方式:使用 concat()函数: 示例:select concat(t.id,',',t.code) from MTable t; (2)以某一个字段为维度统计数量 Orac…
(1) 输入参数为单个值 <delete id="com.fashionfree.stat.accesslog.deleteMemberAccessLogsBefore" parameterClass="long"> delete from MemberAccessLog where accessTimestamp = #value# </delete>  (2) 输入参数为一个对象 <insert id="com.fashi…
国庆假期花了一些时间,首次尝试并玩转 grafana,这几天继续不断优化和完善,如今看着自己的成果,相当满意.--逐步接近我想要的理想后台啦. 需求是不停歇的.今天我又给自己发掘了一些新需求,比如变量.筛选框之类,都收集下来等有空继续玩.编程学习的过程中,对于自己尚未尝试的新技能点,本能直觉会感到困难,但动手经验告诉我:莫慌,用起来就懂了,瞧我自己每次都能很快上手吖.--善于让自己在学习的过程中感受良好,并确实持续进步,自我激励是一个特别实用的软技能. 然后我想着不妨把这几天玩转 grafana…
一.问题的提出                    在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统的响应速度就成为目前系统需要解决的最主要的问题之一.系统优化中一个很重要的方面就是SQL语句的优化.对于海量数据,劣质SQL语句和优质SQL语句之间的速度差别可以达到上百倍,可见对于一个系统不是简单地能实现其功能就可,而是要写出高质量的SQL语句,提高系统的可用…
一.操作符优化 1.IN 操作符 用IN写出来的SQL的优点是比较容易写及清晰易懂,这比较适合现代软件开发的风格.但是用IN的SQL性能总是比较低的,从Oracle执行的步骤来分析用IN的SQL与不用IN的SQL有以下区别: ORACLE试图将其转换成多个表的连接,如果转换不成功则先执行IN里面的子查询,再查询外层的表记录,如果转换成功则直接采用多个表的连接方式查询.由此可见用IN的SQL至少多了一个转换的过程.一般的SQL都可以转换成功,但对于含有分组统计等方面的SQL就不能转换了. 推荐方案…
mysql语句的整理 1.SQL DML 和 DDL 可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL). SQL (结构化查询语言)是用于执行查询的语法.但是 SQL 语言也包含用于更新.插入和删除记录的语法. 查询和更新指令构成了 SQL 的 DML 部分: SELECT - 从数据库表中获取数据 UPDATE - 更新数据库表中的数据 DELETE - 从数据库表中删除数据 INSERT INTO - 向数据库表中插入数据 SQL 的数据定义语言 (DDL…
欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://github.com/jiangxincode 知乎地址: https://www.zhihu.com/people/jiangxinnju -- DBA/ALL/USER/V_$/GV_$/SESSION/INDEX开头的绝大部分都是视图 -- DBA_TABLES意为DBA拥有的或可以访问的所有的…