以文本方式查看主题
- Foxtable(狐表) (http://foxtable.com/bbs/index.asp)
-- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2)
---- 数据行筛选问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=192130)
|
-- 作者:ycs5801
-- 发布时间:2024/5/30 14:57:00
-- 数据行筛选问题
假如传送到该网页两个信息,一个是cpmc,一个是openid,需要在点餐信息表内搜索,如果是否完成列是空、openid相同,但是cpmc不同(也就是说这是客人新点的菜),则增加一行。应该怎么写?
Dim dr2 As DataRow = DataTables("点餐信息").sqlFind("cpmc<>\'" & cpmc & "\' and openid=\'" & openid & "\' and 是否完成=\'\'")\'菜名不同,id相同,完成为空,增加
|
-- 作者:有点蓝
-- 发布时间:2024/5/30 15:05:00
--
什么数据库?SqlServer?是否完成是逻辑列?
[此贴子已经被作者于2024/5/30 15:05:13编辑过]
|
-- 作者:ycs5801
-- 发布时间:2024/5/30 15:06:00
--
sql数据库,是否完成是逻辑列。
|
-- 作者:有点蓝
-- 发布时间:2024/5/30 15:17:00
--
Dim dr2 As DataRow = DataTables("点餐信息").sqlFind("cpmc=\'" & cpmc & "\' and openid=\'" & openid & "\' and 是否完成=0")if dr2 is nothing then 增加的代码 end if
|
-- 作者:ycs5801
-- 发布时间:2024/5/30 15:41:00
--
此主题相关图片如下:qq截图20240321110631.png
以此图为例,如果传送过来的是openid是333,菜品名称是茄子,那么也符合了这个条件,也会执行增加一行。而我的本意是可以在现有行找到相同的openid,而且是否完成也等于空,但是菜品名称不同,这时才增加一行,我觉得是我的思路不对。我再说下我的整个思路:当传送过来openid和cpmc后,如果现有表中完成为空的行中,未找到openid,则增加一行。如果有openid且完成为空,但cpmc和现有的不同,则新增,如果cpmc相同则修改这行。
|
-- 作者:有点蓝
-- 发布时间:2024/5/30 15:49:00
--
需要查2次,先查openid,再查菜
其实就和订单用法一样,建议使用父子表的模式,订单表+订单明细。也就是点餐信息+菜品明细,通过编号关联,先通过openid查询点餐的订单编号,再通过订单编号查询菜品明细。
|
-- 作者:cd_tdh
-- 发布时间:2024/5/30 15:49:00
--
思路:当传送过来openid和cpmc后,如果现有表中完成为空的行中,未找到openid,则增加一行。 如果有openid且完成为空,但cpmc和现有的不同,则新增, 如果cpmc相同则修改这行。
前两个条件是不是没描述清楚?????
|