ID的每一部份应该都是一个单独的字段,如果你把它整个做成了一个字段,且各ID的内容没有明显的区别(比如仅仅是按顺序由分隔符隔开),那恐怕没法实现你的要求,除非像下面这样:
ID的每一部分都有一个独特的标志,如地区ID格式为A:XXXX,客户ID格式为C:XXXX之类,且标志的内容不会出现于ID的非标志中,这样就可以通过模糊查询来完成你的要求了。
SELECT * FROM OrderTable WHERE ID LIKE '*A:*'

解决方案 »

  1.   

    用模糊查询,用SQL语句:
    列如:
    定单ID是XXYYZZ(其中XX是地区ID,YY是客户ID,ZZ是产品ID)
    SQL如下:
    “SELECT * FROM DB WHERE 地区ID LIKE XX%”
    在ACCESS中,好象“%”要换成“*”(忘了)
      

  2.   

    你可以从STRING找出它做为条件用MID,substring等函数。
    但是你ID的必须要有固定的位数
    如 XXXXXX前两位地区ID,中间两位客户ID,最后两为产品ID。
    用Access的例子
    select * from tablenaem where mid(订单号,1,2)='01'
    comment:
    最好还是将订单ID,地区ID、客户ID、产品ID作为不同的字段。
      

  3.   

    语法如下:
    SELECT * FROM 定单表,地区表 WHERE 定单表.地区ID = 地区表.地区ID
    可以利用多个表中相同的字段连接多个表,并过滤相应的条件
    同理进行其他组合查询。