大家好,问题是这样的:你在前台选择一个起始年、月和终止年、月,然后从数据库中搜索符合条件(数据库中也有相关的年和月的纪录)的并输出。
请问搜索条件方面应该怎样写,谢谢!

解决方案 »

  1.   

    首先获得 前台的起始年月 和 终止年月,在用sql语句 查询 这个前台规定的年月范围 数据库中是否有数据,select * from 你的表 where 数据库中的年月 between 前台的起始年月 and  终止年月.
      

  2.   

    数据库里的时间用unix时间戳存储。然后前台选择的时间也用unix时间戳。 这样时间就都是数字了。然后用楼上的select * from 你的表 where 数据库的年月 between 前台的起始年月 and 前台的终止年月.
    unix时间戳用time(),mktime()等函数获得。
      

  3.   

    你的输入格式和数据库的字段格式分别是什么
    嗯,输入的数据格式都是int
      

  4.   

    嗯,不好意思,我提出的问题补充一下:
    数据的格式是int,而且,更要命的是分开存储(这个不是我决定的,O(∩_∩)O~),大概就是year int 
    month int.
      

  5.   

    如果是普通项目的话,那你直接把表单提交的值的年月日合并为YYYY-MM-DD格式,用strtotime()转换成UNIX时间戳录入到数据库里,时间用一个字段来存储,输出用date()格式化成你要的格式,查询前面说的都有
      

  6.   

    把时间转化一下,然后 where 条件
      

  7.   

    查询的是1999-2——2009-10
    SQL:
    SELECT * FROM `test` WHERE year>=1999 and year<=2009 and month not in (select month from test where year=1999 and month<2) and month not in (select month from test where year=2009 and month>10)不知道对不对,希望对你有用。