社区
MS-SQL Server
帖子详情
请教:select where ID in (),后面的in条件,最多可以多长?有规定吗?
learning8899
2016-03-11 10:36:52
请教各位高手,select 一个表,条件是ID在一批数字里面,这个 ID in (1,3,4,5,8,9,10,11,12)等等,可以多长?一万个数字是不是太长了?
...全文
6390
6
打赏
收藏
请教:select where ID in (),后面的in条件,最多可以多长?有规定吗?
请教各位高手,select 一个表,条件是ID在一批数字里面,这个 ID in (1,3,4,5,8,9,10,11,12)等等,可以多长?一万个数字是不是太长了?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Mr_Nice
2016-03-11
打赏
举报
回复
sql语句最长为:
65,536 * 网络数据包大小
(默认的是4096字节) lz可以算一下长度,挺长的。但真写成这样长度的sql 估计也是个问题。
tcmakebest
2016-03-11
打赏
举报
回复
也许是有规定的,但在达到规定之前,也许会因为速度太慢而放弃了,所以不必纠结.
顾西昂
2016-03-11
打赏
举报
回复
最好不要用in 能通过左右连接最好 in效率低
LongRui888
2016-03-11
打赏
举报
回复
in 后面太长,在执行sql语句的时候,就会报错,大概意思就是 内存不足,或者生成执行计划失败 之类的错误。 建议如果实在太长,可以考虑把这些数据插入到一个临时表,然后在和原来表关联,这样比较好
zbdzjx
2016-03-11
打赏
举报
回复
看一下这个:http://bbs.csdn.net/topics/370101633
spiritofdragon
2016-03-11
打赏
举报
回复
1
1、在查询分析器里是没限制的。 2、但在使用时,中间件可以会对字符串长度做限制,但这些跟SQL没关系:比如: 你要拼好串,传进ado对象里,这个过程中,某个环节,或某个变量被限制了长度。当你传到SQL时,已经被截断了。
速通牛客的SQL必知必会
之前做笔试卷子,语言和计算机基础八股都感觉还行,算法leetcode的中等和简单难度也都能AK,但是败在了三道SQL题上了,太久没用了,想我之前还把SQL非技术入门题单刷完了,然后学校的课程学过一遍SQL也做了实验,自己网上又看完并敲过MySQL的基础和高级课,如今沦落到SQL题一脸懵了,速通一把SQL必知必会,顺便复习和练手用;
MySQL(开发篇)
外键:用来让两张表的数据之间建立连接,从而保证数据的一致性和完整性。我们来看一个例子:左侧的emp表是员工表,里面存储员工的基本信息,包含员工的
ID
、姓名、年龄、职位、薪资、入职日期、上级主管
ID
、部门
ID
,在员工的信息中存储的是部门的
ID
dept_
id
,而这个部门的
ID
是关联的部门表dept的主键
id
,那emp表的dept_
id
就是外键,关联的是另一张表的主键。注意:目前上述两张表,只是在逻辑上存在这样一层关系,也就是逻辑外键;在数据库层面,并未建立外键关联,所以是无法保证数据的一致性和完整性的。
SQL语句日常积累
1.create table 字段解释 CREATE TABLE t_age(
id
bigint(20) NOT NULL AUTO_INCREMENT, tdt datetime DEFAULT NULL, tage int(20) DEFAULT NULL COMMENT '年龄', tprovince VARCHAR(20) DEFAULT NULL COMMENT '省份', PRIMARY KEY(
id
) )ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHAR
SQL去重实战:从识别、删除到防护的工程化方案
数据去重是数据库运维中高频但高危的基础操作,其本质并非简单语法应用,而是融合业务语义识别、事务安全控制与系统稳定性保障的综合性工程问题。理解重复数据的业务成因(如支付重试、埋点冗余、用户注册冲突)是前提;掌握基于ROW_NUMBER()的精准分组、CTE驱动的原子化删除、分批处理的大表优化等核心原理,才能规避误删、锁表、NULL陷阱等典型风险;技术价值在于保障数据一致性的同时支撑财务对账、用户主数据治理、实时分析等关键场景;本文聚焦SQL remove duplicates和database dedupli
学习MySQL2020年9月21**
学习MySQL2020年9月21 增加:INSERT INTO 表名(字段名1,字段名2) VALUE(字段值1,字段值2) 例:INSERT INTO a(
id
,name) VALUE(2,‘李四’); 删除:DELETE FROM 表名 WHERE
条件
例:DELETE FROM a WHERE
id
=1; 修改:UPDATE 表名 SET 字段名=字段值 WHERE
条件
例:UPDATE a SET
id
=1,name=‘张三’ WHERE
id
=2; 查询:
SELECT
(字段名,*代表全部)
MS-SQL Server
34,875
社区成员
254,639
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章