2009-12-10 111 views
0

数值比方说,我有查询结构像下面这表明日期如何搜索数据库中的

search.asp?date=091210 

我想找到的每个包括0912字符串如何查询它的链接结构的记录。

+0

什么数据库,以及想要搜索的列的数据类型是什么? – 2009-12-10 22:12:48

+0

我猜这是一个地址数据库,而数据类型是一个字符串。我认为这个例子的意思是“search.asp?zip = 90210”。这是唯一有意义的事情。 – jball 2009-12-10 22:23:39

+1

091210 = 2010年12月9日...它可以很容易地被约会 – kevchadders 2009-12-11 11:57:03

回答

1
SELECT * FROM YourTable WHERE YourField LIKE '%0912%' 
+2

应该指出,没有已知的数据库优化LIKE'%%'查询...意义没有索引将被使用。只有LIKE的'前缀%'是最优的,因为你需要一个通用的前缀来使用索引。 – pestilence669 2009-12-10 21:52:28

+1

@Pestilence,我同意你的看法,但OP说“包括”,所以我不得不猜测。 – 2009-12-10 21:56:53

1

事实上,绝对不要信任URL上给出的任何内容。 你应该怎么做,是解析日期变量,并在一个月,一天和一年中分解它。 一定要做必要的理智检查。 然后你可以发出如下查询: SELECT * FROM yourTable WHERE MONTH(dateColumn)= month AND YEAR(dateColumn)= year