c# 对ACCESS数据库查询字符串问题

冰雨在线 2012-06-03 11:46:27
ACCESS数据库中有一列字符类型的数据。如下:
第一行: Metar ZGGG -RA NOSIG
第二行: Metar ZGGG RA NOSIG
第三行: Metar ZGGG +RA NOSIG
第四行: Metar ZGGG -TSRA NOSIG
第五行: Metar ZGGG +TSRA NOSIG TEMPO -SHRA
第六行: Metar ZGGG -RA NOSIG TEMPS RA
第七行: Metar ZGGG -RA NOSIG TEMPO -TSRA
...

其中-RA代表小雨;RA代表中雨;+RA代表大雨;-TSRA代表弱雷雨;+TSRA代表强雷雨;-SHRA代表小阵雨。
就是说不同的字符串代表不同的意思。我现在想分别筛选出小雨、大雨、中雨等,然后在dataGridew中新建一列显示“小雨、大雨、中雨...”,就是对每一行进行说明。

问题:
1.可以筛选"-RA" "+RA" "-TSRA" "+TSRA" "-SHRA",但是"RA" "TSRA" "SHRA"就不能筛选出来,会把前面的算进来;
不知如何是好?(列中前后都有降水类型,只取前面的)

代码如下:

mySelect = string.Format(@"SELECT * SWITCH(content LIKE '%-RA%','小雨',content LIKE '%+RA%','大雨',content LIKE '%-SHRA%','小阵雨',content LIKE '%+TSRA%','强雷雨',TRUE,'其他降水') AS 天气 FROM Sheet1;
...全文
234 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
冰雨在线 2012-06-14
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]
[/Quote]
你好 还有一个问题,比如
Metar ZGGG +TSRA NOSIG TEMPO 0602 +TSRA 4000
Metar ZGGG +RA NOSIG TEMPO +TSRA 4000

其实“+TSRA”或“+RA”字段的前后字符串是不固定的,之前举例只是大概。如以上2个内容,他们的特点就是中间有一个固定的“TEMPO”将其分开,而我只想判定获取"TEMPO"前的+TSRA 或 +RA.
现在还没思路(想用字符索引判定,但不知道如何实现)。
ParanoidKing 2012-06-03
  • 打赏
  • 举报
回复
前后都加吧
ParanoidKing 2012-06-03
  • 打赏
  • 举报
回复
还是前面加吧
ParanoidKing 2012-06-03
  • 打赏
  • 举报
回复
后面加个空格
冰雨在线 2012-06-03
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]
引用 7 楼 的回复:
[/Quote]

帮个忙哈,不小心发了2个同样的贴,帮我在下面帖子里回复下,给你分哈^^。
http://topic.csdn.net/u/20120603/11/42ea65fa-74ec-4e14-b10c-61f0babc46f1.html
冰雨在线 2012-06-03
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]
引用 7 楼 的回复:
我是说这样:% -RA %。因为-TSRA后面没空格了嘛,所以这……
[/Quote]

谢哈
ParanoidKing 2012-06-03
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]

引用 3 楼 的回复:
前后都加吧

这个问题解决了,剩最后一个了,像这个字段,前后都有降水
Metar ZGGG -RA NOSIG TEMPO -TSRA
判断"%-RA%” 为小雨,"%-TSRA%"为弱雷雨,两个不同的判断,最终不知道是什么结果。(目的是只想取前面的就可以了)
[/Quote]

我是说这样:% -RA %。因为-TSRA后面没空格了嘛,所以这样就只选到前面的。如果那个字串的格式固定的话还可以把ZGGG带上,"%ZGGG -RA%"就可以保证选到前面那个了。
冰雨在线 2012-06-03
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
前后都加吧
[/Quote]
这个问题解决了,剩最后一个了,像这个字段,前后都有降水
Metar ZGGG -RA NOSIG TEMPO -TSRA
判断"%-RA%” 为小雨,"%-TSRA%"为弱雷雨,两个不同的判断,最终不知道是什么结果。(目的是只想取前面的就可以了)
冰雨在线 2012-06-03
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
带上G,"G RA",直接"RA"会选到单词
[/Quote]
G 大概是什么意思呢?
冰雨在线 2012-06-03
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
前后都加吧
[/Quote]
好像真可以,呵呵 谢了
前后空格是代码该字符串的前和后都是空格吧?
paiooo 2012-06-03
  • 打赏
  • 举报
回复
带上G,"G RA",直接"RA"会选到单词

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧