id和pid的区别是什么

id和pid的区别是什么,第1张

id和pid都是程序设计者或者数据库设计者自定的名称,本身没有啥本质区别的,就像一个人叫张三还是张三丰有什么区别么?真要说区别就是后者比前者多了一个字而已。只要你高兴,你可以把数据库的编号设为id、bianhao、bh、tmd或者直接用汉字“编号”都是可以的,之所以用id是延续了英文的使用习惯,是一种不成文的规定,是约定俗成,而且大部分的数据库软件(如ACCESS)都是默认用id作为编号字段的名称(可以改的)。而用pid是在有多个库的情况下,为了和其他库的id进行区别而设的。一般来说,pid表示产品编号(p就是Product),其他类似的还有用户编号uid(u就是User)等等。

题主的这个排序需求,用SQL来解决,其难度的确比较大,不过经过特殊的排序安排还是可以解决的。请参考下列语句:

这里假设表名为OrderTest(id,pid,name) id是主键具有唯一性

select t.id,t.pid,t.`name` from 

(select a.*,

(select id from OrderTest where id=a.pid and 

id<>a.id limit 1) as p

from OrderTest a) t 

order by 

IFNULL(t.p,t.id),

case when t.p is null then 0 else 1 end,t.id

下面是实验截图


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9908019.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存