以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]SELECT 语句 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=2129) |
-- 作者:狐哥 -- 发布时间:2009/3/17 14:48:00 -- [求助]SELECT 语句 麻烦各位老师: 如下查询语句不知如何设置,LIKE语句不对吗? Dim cm As String = e.form.Controls("combobox1").Value Dim tx As String = e.form.Controls("textbox3").Value Dim dst As WinForm.DataList = e.Form.Controls("DataList1") Dim cmd As New SQLCommand if cm = "柜号" then cmd.CommandText = "SELECT * From {柜型柜号} 柜号 like \'" & tx & "\'" end if dst.DataTable = cmd.ExecuteReader() dst.Build() |
-- 作者:狐狸爸爸 -- 发布时间:2009/3/17 14:50:00 -- cmd.CommandText = "SELECT * From {柜型柜号} 柜号 like \'*" & tx & "*\'" |
-- 作者:狐哥 -- 发布时间:2009/3/17 15:44:00 -- 非常感谢. |
-- 作者:狐哥 -- 发布时间:2009/3/17 15:46:00 -- 是我公式写错,呵呵 [此贴子已经被作者于2009-3-17 15:47:06编辑过]
|
-- 作者:狐哥 -- 发布时间:2009/3/17 17:00:00 -- 如下加了WHERE仍不可以提取出来,麻烦帮我看看如下代码是否有错?
Dim cm As String = e.form.Controls("combobox1").Value Dim tx As String = e.form.Controls("textbox3").Value Dim dst As WinForm.DataList = e.Form.Controls("DataList1") Dim cmd As New SQLCommand if cm = "柜号" then cmd.CommandText = "SELECT * From {柜型柜号} WHERE 柜号 like \'*" & tx & "*\'" end if dst.DataTable = cmd.ExecuteReader() dst.Build() |
-- 作者:狐狸爸爸 -- 发布时间:2009/3/17 17:10:00 -- cmd.CommandText = "SELECT * From {柜型柜号} WHERE 柜号 like \'%" & tx & "%\'" |
-- 作者:狐狸爸爸 -- 发布时间:2009/3/17 17:11:00 -- LIKE运算符 LIKE运算符用于将指定表达式的值和一个模式字符串进行比较,判断两者是否匹配。 你在LIKE 操作样式里可以使用多种通配符,如下所示: 例如: Like \'C%\', 表示以字符C开始的值。 Like \'P[A-F]%\' 表示以字母P开头、而其后接着介于A到F之间的任何一个字母,最后是任意个数的任何字符。 找出客户表中的贸易公司: SELECT * FROM 客户 WHERE 公司名称 LIKE \'%贸易%\' 找出客户ID不是以字母A或B字母的客户: SELECT * FROM 客户 WHERE 客户ID LIKE \'[!AB]%\' 找出客户ID以字母A、B、C、D中任何一个开头的客户: SELECT * FROM 客户 WHERE 客户ID LIKE \'[A-D]%\' 可以利用NOT关键词进行反向操作,例如: SELECT * FROM 客户 WHERE 公司名称 NOT LIKE \'%贸易%\' 找出所有非贸易公司。 |
-- 作者:狐哥 -- 发布时间:2009/3/17 17:12:00 -- 哈,我将%加在单引号的外面去了. |