以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  like的使用问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=173483)

--  作者:hbfnmxb
--  发布时间:2021/12/1 15:38:00
--  like的使用问题
有一条代码:
Dim dt1 As DataTable = DataTables("代码库")
Dim dt3 As DataTable = DataTables("专业门类")
For Each dr As DataRow In dt1.Select("")
    Dim filter As String = "\'" & dr("专业名称")  & "\' like  专业名称 + \'%\'"
    Dim fdr = dt3.find(filter)
    If fdr IsNot Nothing Then
        dr("专业代码") = fdr("专业代码")
    End If
Next
代码没问题
举例说明问题:在“专业门类”表中,即有“法学”代码为030301,又有“法学类”代码为0303,但,通过执行代码后,法学类的代码应该是“0303”,可最后的结果是“030301”。这个问题有没有办法解决(上述代码如何修改,可以解决此问题!)谢谢老师!!

--  作者:有点蓝
--  发布时间:2021/12/1 16:17:00
--  
Dim filter As String = "\'," & dr("专业名称")  & ",\' like  \'%,\'+专业名称 + \',%\'"
--  作者:hbfnmxb
--  发布时间:2021/12/1 16:47:00
--  
谢谢老师,一楼的问题解决了,但是又出现了新的问题,在专业名称后面有后辍的,不能调用代码,看图说明一下:
图片点击可在新窗口打开查看此主题相关图片如下:00.png
图片点击可在新窗口打开查看现在专业名称后面有后辍的,也应该同“法学类”一样的代码!!而现在是空的。
[此贴子已经被作者于2021/12/1 16:46:59编辑过]

--  作者:有点蓝
--  发布时间:2021/12/1 16:50:00
--  
这种没有办法,表格设计有缺陷,另外再加一个辅助列,存储括号里的内容。名称列不要包含括号里的内容
--  作者:hbfnmxb
--  发布时间:2021/12/1 16:56:00
--  
好的,谢谢老师!!明白了!
--  作者:hbfnmxb
--  发布时间:2021/12/1 19:15:00
--  
老师,我增加了一列,叫“专业后辍”列,如何把专业名称列中后辍的东西,复制到此列,以“【”为标记!!办法吗?
--  作者:有点蓝
--  发布时间:2021/12/2 8:38:00
--  
遍历所有行,根据括号拆分:http://www.foxtable.com/webhelp/topics/0245.htm