SQL语言
水田如雅
不生产代码,只是代码的搬运工
展开
-
退卡问题
虽然在写代价时犯过很多逻辑错误,出现了很多漏洞,但是改了几次,都基本找出来了,但是对于退卡问题,我是真心伤了。。。。。。。。 一,退过卡的人,不能再次上机。 二, 每人只能退卡一次。 三,退卡人员的记录不能删除,要保留,但是在注册新用户时,不能用退卡人员的主键。 四,退卡的金额:什么都不写,默认全部退还。 五,退过卡的人不能再次原创 2013-11-15 21:10:24 · 2344 阅读 · 23 评论 -
SQL Server大数据导入导出:将一张表的数据导入到另一张表
今天下午休息的时候又被扔给一项任务:把全国的街道数据导入街道表。但是他们扔给我的SQL脚本是从网上down的一个,跟平台这边的数据库设计的完全不一样。 当时的思路是:先把扔给我的脚本在本地生成一个表,然后选出要的数据,批量插入到开发库所在服务器的表。 然后,按照这个思路做了个测试: INSERT INTO原创 2015-04-15 23:24:47 · 4352 阅读 · 6 评论 -
SQL调用WebService接口
今天在做一个很奇葩的东西,中间有个过程要在SQL触发器里面调用webservice接口。呵呵~ --调用webService---------------- declare @ServiceUrl as varchar(1000) DECLARE @UrlAddress varchar(500) --WebService地址:以http开头,结尾原创 2015-07-03 20:26:42 · 5834 阅读 · 12 评论 -
MySQL基本分页查询方法及其优化
今天将一个oracle的数据库生成到了mySQL,因为代码比较原始,是JDBC访问数据库的,所以,对数据库的分页查询一下子就查不出来了。小忧伤( ⊙ o ⊙ )啊! 先看下之前查询的code: public PageModel findUserList(int pageNo,int pageSize) { StringBuffer sbSql=new StringBuffe原创 2015-11-21 20:04:20 · 2247 阅读 · 13 评论 -
MySQL数据库优化概述
一,数据库优化的目的 1,避免出现页面访问错误 由于数据库的timeout产生的5**错误; 由于慢查询造成的也没无法加载; 由于阻塞造成数据无法提交;2,增加数据库的稳定性 很多数据库的问题都是由于低效的查询引起的;3,优化用户体验 流畅页面的访问速度; 良好的网址功能体验;二,数据库优化的角度SQL及索引:避免慢查询,阻塞操作;数据库表结构:满足三范式,冗余原创 2016-06-26 08:57:19 · 2313 阅读 · 2 评论 -
MySQL索引失效的几种情况
一,使用Like关键字查询语句 首先看下我的测试表的行数: select count(0) from tb_user 结果如下: 一共16行。 使用like '% ':explain select * from tb_user where username like '%si' 分析结果:发现查询了16行,吼吼~~就是全查呗~next:explain sele原创 2016-06-20 21:14:56 · 2878 阅读 · 2 评论 -
MySQL 存储过程常用SQL语句收集
1,select curdate() /*2016-10-08*/2,select date_sub(curdate(), INTERVAL 6 DAY) /*2016-10-02*/3,case when then else 拼接条件查询:WHERE (CASE WHEN IFNULL(@belongCity,'0')='0' OR @belongCity='' THEN 1 E原创 2016-10-08 20:42:14 · 1061 阅读 · 2 评论 -
MySql 使用explain分析查询
今天写了个慢到哭的查询,想用explain分析下执行计划,后来发现explain也是有局限性的:EXPLAIN不会告诉你关于触发器、存储过程的信息或用户自定义函数对查询的影响情况•EXPLAIN不考虑各种Cache•EXPLAIN不能显示MySQL在执行查询时所作的优化工作•部分统计信息是估算的,并非精确值•EXPALIN只能解释SELECT操作,其他操作要重写为SELECT后查看执行计划原创 2016-10-08 22:27:32 · 768 阅读 · 5 评论 -
Spring源码分析——JdbcTemplate执行批量insert操作
最近用到一个方法:@Override public int[] batchUpdate(String sql, final BatchPreparedStatementSetter pss) throws DataAccessException { if (logger.isDebugEnabled()) { logger.debug("Executing SQL batch upda原创 2016-10-16 21:44:06 · 9562 阅读 · 3 评论 -
MySql——查看数据库性能基本参数
使用show status可以查看数据库性能的参数,基本语法:show status like 'value';例如:show status like 'Connections';/*连接mysql服务器的次数*/show status like 'Uptime';/*mysql服务器的上线时间*/show status like 'slow_queries';/*慢查询的次数*/show原创 2016-10-08 21:57:27 · 1535 阅读 · 3 评论 -
where 1=-1 and 1=1 会不会影响查询效率?
今天用sql profiler跟一个底层生成的SQL 的时候,跟到原创 2015-04-08 11:19:58 · 6232 阅读 · 6 评论 -
SQL——处理页面多条件查询
以前处理多条件查询,主要是两种方法,第一种是在条件里面判断要填入条件的字段,然后判断传入参数是否为空,如果为空,就用1=1替代这个条件;第二种方法,先判断传入参数是否为空,如果不为空,将条件拼接到一个字符里面,最后再使用exec执行字符串;最近又要做这个东西,感觉还是挺熟悉的,额,,其实是挺无聊的。但是在做的过程中跟旁边大哥闲扯的时候,他又给我写了一种case...when...end..的方式,原创 2015-02-14 00:30:02 · 2373 阅读 · 4 评论 -
SQL server 创建自增列
一,企业管理器中创建自增列 选择要创建自增列的表,然后右击选择设计,创建一列 然后在下面的表属性里: 将标识规范里的(是规范)改为是,设置标识增量(每行增加多少)和标识种子(从多少开始增加),此处都写1就行。保存。 二,使用T-SQL语句alter table 表名 add 列名 int IDENTITY(1,1) NOT NULL原创 2013-11-08 17:04:46 · 10955 阅读 · 22 评论 -
日结账单和周结账单
一,结账 在说周结账单和日结账单之前,得先做好结账的工作。在汇总里面,有个结账,其实这个结账的代码很简单,只是两个Update,值要把结账状态的标记改变一下就可以。这个结账好像平常都会有个老师负责收取充值的现金,也负责退卡的现金,在结他的账的时候,他要把手里的钱都上交。 周结账单和日结账单是对所有金额的汇总,包括学生的消费金额,而由于在上机时的消费金额是在下机时自动扣原创 2013-11-15 21:00:19 · 4883 阅读 · 21 评论 -
SQL语句的两次执行问题
昨天下午,写充值窗口时,出现了SQL语句被执行两次的问题。头痛了一下午和一晚上。 充值的窗口要操作两张表,一张是学生的基本信息表,就是将充值金额写入。另一张表,是用来存放本次充值的信息,比如:充值时间日期,谁充的钱。。。对前一张表的操作很快就写好了。但是在修改第二张表时,却出现了问题。 先来看一下代码:'修改教师充值表 SQL3 = "insert int原创 2013-10-02 20:42:50 · 13043 阅读 · 10 评论 -
图解Join
在做机房收费系统中,涉及到多张表的查询时,用到了join,感觉很不错,学习了下join,顺便复习了下高中数学。 现在,用机房收费系统中学生信息表和学生上机表做个小DEMO~ ,如图: 表A:学生信息表: 表B:学生上机表:原创 2014-06-29 16:26:26 · 1857 阅读 · 18 评论 -
SQL两种简单分页查询方式
以前我们或许都用过了linq的skip and take方式进行分页查询,但是很少自己写sql的分页查询,因为大多数时候,我们都是在调用别人的方法。 最近看到一个文档,感觉方法里面实现的分页查询进入数据库调用的时候,实际最底层调用的还是SQL的分页查询,例如,我们用linq写个分页查询,转成sql表达式后发现:原创 2015-01-03 11:21:39 · 3482 阅读 · 5 评论 -
SQL——处理行的累加
背景: 现在有一张报表,其中上面的数据是商家的订单数据,按照天统计的,要从订单表查出每天的某个商家的订单量,然后去日收益表查出这天的这个商家的收益额,然后还要统计出在某天之前的所有收益额,然后从查出的这种表里筛选出某个时间段的记录。 下面是SQL:ALTER PROCEDURE [dbo].[sp_LoadSell原创 2015-02-12 21:39:14 · 3331 阅读 · 3 评论 -
SQL——使用游标进行遍历
前两天一个同事大叔问了这样一个问题,他要对表做个类似foreach的效果,问我怎么搞,我想了想,就拿游标回答他,当时其实也没用过数据库中的游标,但是以前用过ADO里面的,感觉应该差不多。 今天闲下来,百度下,做了个关于游标的小DEMO: 首先,让我们先来建张测试表: USE LoadTe原创 2015-03-14 22:06:48 · 1896 阅读 · 3 评论