以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]selelct 包含不同的表写法 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=145921) |
||||
-- 作者:blsu33 -- 发布时间:2020/2/11 20:56:00 -- [求助]selelct 包含不同的表写法 老师, 现在的sql,语言写法 有变化了是吗 例如 Select Countryid,id,poutcaption,userid,authid,authoder,{zatoppnl}.poutcaption,imgbigt Fr om {zapoutcaption} Left JOIN {zatoppnl} ON {zatoppnl}.[authid] = {zapoutcaption}.[id] 原来 这里 不用加表名就可以生成,现在的语句必须加表名对吗?
|
||||
-- 作者:有点蓝 -- 发布时间:2020/2/11 20:59:00 -- 一直都这样吧。如果2个表都有同样的列名,需要添加表名,不然不知道取哪个表的列的。 |
||||
-- 作者:blsu33 -- 发布时间:2020/2/11 21:25:00 -- Dim dr As DataRow=dt.find("authid=\'"& titlename &"\' & "and (" & "userid=\'"& clientname99 &"\' or userid like\'"& clientname99 &",%\' or userid like\'%,"& clientname99 &"\' or userid like\'%,"& clientname99 &",%\')" & ")" 老师 表达式 有点忘了 您看看 这个 怎么写 |
||||
-- 作者:有点蓝 -- 发布时间:2020/2/11 21:45:00 -- 参考:http://www.foxtable.com/webhelp/topics/1284.htm 如果搞不明白的,建议使用这种用法:http://www.foxtable.com/webhelp/topics/2919.htm Dim dr As DataRow=dt.find("authid=\'" & titlename & "\' and (userid= \'" & clientname99 & "\' Or userid like \'" & clientname99 & ",%\'or userid like \'%," & clientname99 & "\' Or userid like \'%," & clientname99 & ",%\')")
|
||||
-- 作者:blsu33 -- 发布时间:2020/2/11 22:23:00 --
|
||||
-- 作者:blsu33 -- 发布时间:2020/2/11 22:24:00 -- 此主题相关图片如下:微信图片_20200211221627.png 明明 有 这个字段 为啥还不对呢 Dim str = dt.sqlFind(flt1, "len({zapoutcaption}.[poutcaption]) desc")("{zapoutcaption}.[poutcaption]")
|
||||
-- 作者:有点蓝 -- 发布时间:2020/2/11 22:27:00 -- Dim str = dt.sqlFind(flt1, "len({zapoutcaption}.[poutcaption]) desc")("zapoutcaption.poutcaption") |
||||
-- 作者:有点蓝 -- 发布时间:2020/2/11 22:46:00 -- 完整代码发上来看看 |
||||
-- 作者:blsu33 -- 发布时间:2020/2/11 22:52:00 --
|
||||
-- 作者:有点蓝 -- 发布时间:2020/2/11 22:59:00 -- 加上别名,不然同名列就是这样了 Dim cmd As New SQLCommand Dim dt As DataTable cmd.C">cmd.CommandText ="Select {表A}.[第二列],{表B}.第二列 From {表A} Inner JOIN {表B} ON {表B}.[第一列] = {表A}.[第一列]" dt = cmd.ExecuteReader For Each dc As DataCol In dt.DataCols msgbox(dc.name) Next 加上别名 cmd.CommandText ="Select {表A}.[第二列] as a,{表B}.第二列 as b From {表A} Inner JOIN {表B} ON {表B}.[第一列] = {表A}.[第一列]" dt = cmd.ExecuteReader Dim dr As DataRow MessageBox.Show(0) dr =dt.Find("a=\'测试\'") If dr IsNot Nothing Then MessageBox.Show(1) MessageBox.Show(dr("a")) End If [此贴子已经被作者于2020/2/11 23:00:00编辑过]
|