【问题标题】:Filtering sql data with multiple filter vb.net (winform)使用多个过滤器 vb.net (winform) 过滤 sql 数据
【发布时间】:2014-05-28 03:22:56
【问题描述】:

我想将数据从 SQL 过滤到我的数据网格。

我有:

1 个表(tableX)

3 列

 Col1    Col2      Col3
1/x/10    BJB    1/20/20
1/y/10    BJB    1/20/30
1/x/10    BJB    1/20/30
1/y/10    BJB    1/20/20

2个数据网格(dg1,dg2)

我想插入:

dg1 与 col1 "1/x/10" 和 col3 "10/20/20"

dg2 与 col1 "1/y/10 和 col3 "10/20/20

我只能用一个 Col3 过滤

"SELECT Col1, Col2, Col3  FROM Tablex WHERE Col3='10/20/20'"

如何过滤 col1 女巫包含“x”或“y”和 col3?

================================================ =============================

哦,是的。。谢谢你的回答。

dg1 的这个

("SELECT Col1, Col2, Col3  FROM TableX WHERE Col1 like ('%/X/%') AND Col3='10/20/20'")

这对于dg2来说,不同的只是X和Y..lol

("SELECT Col1, Col2, Col3  FROM TableX WHERE Col1 like ('%/Y/%') AND Col3='10/20/20'")

【问题讨论】:

  • 如果我正确阅读了您的问题,这篇 SO 帖子将对您有所帮助。 stackoverflow.com/questions/5843537/…
  • 你是说你想调用一个数据库来填充两个数据网格吗?
  • 不,我不是.. 1 个数据网格的 1 个命令。
  • 然后SELECT Col1, Col2, Col3 FROM Tablex WHERE Col3='10/20/20' AND Col1 = '1/x/10' 为一个,SELECT Col1, Col2, Col3 FROM Tablex WHERE Col3='10/20/20' AND Col1 = '1/y/10' 为另一个。
  • @Fred 您的代码正在运行,但是.. col1 并不总是“1/x/10”和“1/y/10.. x 和 y 是静态的,但 1 和 10 总是会改变..对不起我的坏问题...

标签: sql vb.net winforms


【解决方案1】:
SELECT Col1, Col2, Col3  
FROM Tablex 
WHERE COL1 IN ('1/x/10', '1/y/10')
AND Col3 = '10/20/20

或者您可以使COL1 过滤器更加模糊。

SELECT Col1, Col2, Col3  
FROM Tablex 
WHERE COL1 IN ('%/x/%', '%/y/%')
AND Col3 = '10/20/20

【讨论】:

  • SELECT Col1, Col2, Col3 FROM Tablex WHERE COL1 IN ('x', 'y') AND Col3 = '10/20/20' 它什么都不返回..
  • 现在看看,更新了答案,我最初只是使用 x 和 y 作为占位符,我没有意识到你的数据中有它们。
【解决方案2】:
SELECT Col1, Col2, Col3  
FROM Tablex 
WHERE Col3='10/20/20'
AND (COL1 like '%/x/%' or COL1 like '%/y/%')

【讨论】:

  • ihave error ERROR [42000] [MySQL][ODBC 5.2(w) Driver][mysqld-5.5.25a]您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 '%'X'%)' 附近使用正确的语法。
  • 为什么要使用 Like? Where (COL1 = '1/x/10' or COL1 like '1/y/10') 效率更高,但基于上面的数据集,此查询与 SELECT Col1, Col2, Col3 FROM Tablex 相同
  • @Fred 你确定每次只有这些字符串('1/x/10'、'1/y/10')吗? OP 询问how to filter col1 witch contain "x" or "y",我认为这只是示例数据。
  • 抱歉,你的问题显然比我清楚! :) ps 我没有对你投反对票。
猜你喜欢
  • 2014-08-06
  • 2020-05-04
  • 2021-05-18
  • 1970-01-01
  • 1970-01-01
  • 2022-01-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多