1. in的巨坑

CREATE TABLE #tmp1 (id INT, value int)
CREATE TABLE #tmp2 (id1 INT, value int)
INSERT INTO #tmp1 VALUES ( 1,1),(2,2),(3,3)
INSERT INTO #tmp2 VALUES ( 4,1),(5,2),(6,3)
SELECT * FROM #tmp1 WHERE id IN (SELECT id FROM #tmp2) DROP TABLE #tmp1,#tmp2

#tmp2没有id这个列,但是 where id in (select id from #tmp2)没有报错,而且执行成功。sql废掉了联合查询的关键字查找(见下图),select 那句等同于没有where过滤。如果是delete,坑死你没商量。

2. uniqueidentifier的坑

DECLARE @id UNIQUEIDENTIFIER
SET @id = '78DC3F2C-50E3-49FA-B96C-B98CB5D2DE0D select * from #tmp1'
SELECT @id

手动拼接sql时,踩出来的雷。少了一个反单引号。然后,就没有然后了。后面的逻辑全部作废。

180510.最近踩过和听过的sql的坑的更多相关文章

  1. 踩的python列表及for循环一个坑儿

    一个列表循环的问题,困扰了半个小时,我也是醉了,值得深思 下面开始提需求: 一个列表mylist = [{'tag':1,'num' :5000},{'tag':2,num: 6000},{'tag' ...

  2. react-native 踩坑记

    最近在使用react-native的时候遇到了很多坑,这里给大家分享下 一.样式 react-native 虽然支持flex布局,但是所有的样式均是css样式的一个很小的集合,尤其是在安卓机下问题尤为 ...

  3. oracle 11g 修改默认监听端口1521

    OS: Oracle Linux Server release 5.7 DB: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - ...

  4. 曾经的pc端项目踩到的一些兼容性的坑及其解决方案

    曾经公司pc端项目一直最低兼容到IE7,要求和chrome下浏览效果一致,真心坑坏了我和另外一个小伙伴(另一个小伙伴以前也没处理过兼容问题).不过还好,在这里真心感谢鑫哥博客的详解,从底层原理讲到了具 ...

  5. 宣布正式发布 Windows Azure Notification Hub,新增 SQL Server AlwaysOn 可用性组侦听器支持

    今天,我们非常高兴地宣布,针对使用 Windows Azure 的移动和企业开发人员推出一些新功能.这些新功能可以减少构建移动应用程序的开发时间和成本,并能帮助企业开发人员实现高可用性和全球业务连续性 ...

  6. 关于WebAPI跨域踩到的一点坑

    最近在尝试前后端分离的WebAPI+AngularJS方案,在率先处理授权的时候,踩到了一点WebAPI跨域的坑,其实严格意义上来说也不算是坑吧,只是我自己对WebAPI不熟悉而已,这里我与大家分享一 ...

  7. 使用 mysql-proxy 监听 mysql 查询

    什么是 mysql-proxy? mysql-proxy是mysql官方提供的mysql中间件服务,上游可接入若干个mysql-client,后端可连接若干个mysql-server. 它使用mysq ...

  8. 听dalao讲课 7.27

    1.高斯消元&线性基 也就是打大暴力啊 所谓的高斯消元也就是加减消元嘛,我的意识流高斯消元是可以的,没听到HY神犇讲,LZHdalao讲得很好,其实就是\(O(n^3)\)的暴力,别的地方一直 ...

  9. 《Python3 网络爬虫开发实战》开发环境配置过程中踩过的坑

    <Python3 网络爬虫开发实战>学习资料:https://www.cnblogs.com/waiwai14/p/11698175.html 如何从墙内下载Android Studio: ...

随机推荐

  1. 洛谷 P2814 家谱(gen)

    题目背景 现代的人对于本家族血统越来越感兴趣. 题目描述 给出充足的父子关系,请你编写程序找到某个人的最早的祖先. 输入输出格式 输入格式: 输入由多行组成,首先是一系列有关父子关系的描述,其中每一组 ...

  2. 2017-10-5-Python

    想学习Python很长时间了,工作中使用Python脚本解决问题真的很爽. 插入一张Python的py文件常见的结构图: if __name__ =="__main__" 这条语句 ...

  3. ajax 浏览网页等待页面

  4. 09树莓派一体化安装(All-In-One Installer)智能家居平台Home Assistant

    2017-08-30 13:29:38 Raspberry Pi All-In-One Installer 全新安装树莓派系统(系统为官方的RASPBIAN STRETCH WITH DESKTOP, ...

  5. NOIP不开心记(不开心的东西肯定不能给别人看!)

    写在前面的.. noip之后一直很想写一下什么的.. 老师:这就是你逃晚自习来机房的原因?? Day 0 坐了好久的车来到GZ.. 年年都是GZ.. sb酒店垃圾的要死.. 路上都是杀马特.. 隔壁还 ...

  6. js获取浏览器屏幕的尺寸

    浏览器屏幕尺寸参照表: 如何获取屏幕宽度: 网页可见区域宽: document.body.clientWidth网页可见区域高: document.body.clientHeight网页可见区域宽: ...

  7. Python核心编程(第二版)正则表达式练习题解

    15-1. 识别下列字符串:“bat,” “bit,” “but,” “hat,” “hit,” 或 “hut” from re import match word = raw_input('inpu ...

  8. java中常用的进制转换

    十进制转成十六进制:   Integer.toHexString(int i)   十进制转成八进制   Integer.toOctalString(int i)   十进制转成二进制   Integ ...

  9. oracle增加表空间大小

    第一步:查看表空间的名字及文件所在位置: select tablespace_name, file_id, file_name, round(bytes/(1024*1024),0) total_sp ...

  10. js权威指南笔记

    //如setTimeout的delay参数为0毫秒,那么指定的函数不会立即执行.只会把它放到队列中,等到前面处于等待状态的事件处理 //程序全部执行完成后,再调用它. function invoke( ...