表中有几个字段,各字段内部内容之间用逗号分割,要实现如下几个操作,求一存储过程
有一个数据库表,存储的是对于某条新闻,应该查看的有哪些人、还未察看的有哪些人、已经察看的有哪些人,结构如下:
ID int --表ID
NewsID int --新闻编号
Users Text --应该察看此新闻的所有人
WaitUsers Text --还未察看的有哪些人
CompUsers Text --已经察看的有哪些人
Relations int --表示Users字段所有用户之间的“与或关系”:1为“与关系”,即所有人都必须看完;0为“或关系”,即只要有任意一人看完即可
Status int --表示此新闻当前的察看状态:0为已看完,1为未看完
其中,Users、WaitUsers、CompUsers的内部,各用户名之间都是使用逗号分割的形式,如初始状态:
Users字段内容:User1,User2,User3
WaitUsers字段内容:User1,User2,User3
CompUsers字段内容为空
Relations字段内容:1(与关系)
Status字段内容:1
当User2看完此新闻后,形式变成:
Users字段内容:User1,User2,User3
WaitUsers字段内容:User1,User3
CompUsers字段内容:User2
Relations字段内容:1
Status字段内容:1
============================================
由于我的SQL语句实在很烂,总也调不出来,所以向大家求一个存储过程,实现上边例子中的功能,具体如下:(我按照逻辑顺序组织了一下)
功能点1:判断某条NewsID是否存在?
|
|
|
——————————————
存| 不|
在| 存|
| 在|
功能点2:用户之间
是否为“与关系”?
|
|
|
————————————
| |
是| 否|
| |
功能点3:WaitUser字 (完成与功能点4相同
段是否只剩User2? 的功能)
|
|
|
————————————
| |
是| 否|
| |
功能点4:将User2添加 功能点5:将User2
到CompUser中,并将 从WaitUser置到
WaitUser字段清空、将 CompUser中
Status字段置为0 且SP返回值为1
且SP返回值为0
请大家帮一下忙~~非常非常感谢~~
^o^