当前位置:首页 » 编程语言 » sql不连续字段
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql不连续字段

发布时间: 2022-09-12 13:59:29

sql 假如一个表有ID,Name两个字段,id为自增,但不连续,要查询第10到20行里Name值不重复数据

既然用了数据库,就要转变思路,学会数据库的逻辑。
虽然在物理存储的概念上来说是一行一行的,但逻辑上数据库中是没有行的概念的,所以说这个问从设计之初就有问题。
如果数据库结构已经确定了的话,用一句sql实现不了,可以用存储过程来实现,先按id排序,取出20行,再反过来取后面10个就可以了。

Ⅱ 请教sql高手,我删除一条语句,为什么自增字段不连续

自增字段中用过了的值就不能在用了,所以你删除了记录他还会继续增长。可以设置set identity_insert on 然后就可以更新自增字段的值了,也可以插入自增值了。可以另建一个表,将其插入进去。

Ⅲ 要查数据表中第30到40条记录,有字段ID,但是ID并不连续,如何写SQL语句

例:select * from employees e where rownum betwon 30 and 40;

解释:rownum -- 数据库会为出现在查询结果里的记录进行编号,从1开始。

-- 请打印表里的前5行记录
select * from employees where rownum<=5;

-- 请打印表里的第6到第10行记录
select * from employees where rownum between 6 and 10;

注意:对于rownum只能应用 < ,<=, >,>=, =, between XXX and XXX

Ⅳ SQL不连续的模糊查询

查询一个字段中不连接的值?指什么;


查询LIKE'%是网络公众%'?这是查不到值的.


因为答案中:我是第一个加入网络知道的公众,没有包含【是网络公众】


如果你又想查【是】【网络】【公众】同时的三个参数 必须要分三个like

字段Like'%是%'or字段Like'%网络%'or字段Like'%公众%'

这样只要包含【是】和【网络】和【公众】都会显示


如有问题可以追问,我当及时回答.

希望能帮到你!

Ⅳ 怎么使SQL表中不连续的编号重新变连续

要看你的目的是什么,为什么要这样做。
1、如果纯粹是为了显示好看,可以在显示时单独1列输出程序给的序号(永远都是连续的),数据库里的编号根本不用显示它。
2、如果还需要使用这个编号作为参数,可以隐藏传递。
3、如果必须要显示它,它还在别的表中有引用,那么肯定不能随便修改它。
4、如果没表引用它,就是要它连续,也分为2种:a、新行使用编号2;b、345修改为234,新行使用5。如果是b,那么这个字段没用,可以删除了。

Ⅵ 用sql语句查询没有连续的字段 如 字段内容为 1,2,3,5,8,11 则输出 4,6,7,9

思路:

  1. 构建字段序列, 如 从1到11的序列;

  2. 查询缺失的序列;

--基础数据
withtmpas
(select1asinionall
select2unionall
select3unionall
select5unionall
select8unionall
select11),
--构建序列
tmp1(s_id,e_id)as
(selectmin(id),max(id)fromtmp
unionall
selects_id+1,e_idfromtmp1
wheres_id<e_id)
--查询缺失的序列
selects_idfromtmp1wheres_idnotin(selectidfromtmp)
orderbys_id;

Ⅶ 在SQL中如果主键字段是不连续的 如何查出表中的第三四条数据

select top 2 * from exloginrecord where id not in (select top 2 id from exloginrecord order by id )
order by id
写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。
答:
解1: select top 10 * from tsmordermanage where id not in (select top 30 id from tsmordermanage order by id) order by id
解2:select top 10 * from tsmordermanage where id > (select max(id) from (select top 30 id from tsmordermanage order by id )as tsmordermanage)
order by id
看你表结构有的不需要order by 的,昨天刚看这个面试题

Ⅷ SQL语句 取与当前值不重复的一个非连续字段的最小空白值

直接新建数据库记录主键,管你4角编码是什么重复不重复,用ID号确认唯一逐一增加的编号来区分,而不用这个麻烦的有可能重复的4角编码。这样你的问题就不成立了

Ⅸ sql server主键自增为什么不连续

这类自增字段是不会去补被删除的记录对应的ID的,就是说系统里记录一个最大值,每次增加记录都在这个值上增长,这类值在应用中不要去考虑让其连续,因为要连续代价太大,相当于重建个表重新生成这个字段值。

Ⅹ sql server 2012 自增列不连续怎么办

sql链接字条串
provider=sqloledb.1;persist
security
info=false;data
source=127.0.0.1,1433;user
id=username;pwd=passwd;initial
catalog=database,
username
数据库用户名,passwd
密码,database
对应的数据库,data
sourse是数据库的ip地址及端口号,请确保以上都是正确的。