duanchen1937 2016-08-01 14:25 采纳率: 0%
浏览 71
已采纳

使用php / SQL查询数据库中的信息

database columns

I want to select data from a table using those two columns. I'm i trying to do is select the table where month is between February and August and year between 2003 and 2005 including the month of january for 2004 and 2005. I have tried this: `

$number = range(3, 8);  

foreach($number as $key=> $value):
                    $where .= " Month ='$value' AND Year BETWEEN '2003' AND '2005' or " ;                   
        endforeach;
if(strlen(trim($where)) > 0)

    $where = substr(trim($where), 0, -2);`
$query = "SELECT * FROM myTable $where";

which return the following query

SELECT * FROM myTable WHERE Month ='2' AND Year BETWEEN '2003' AND '2005' or Month ='3' AND Year BETWEEN '2003' AND '2005' or Month ='4' AND Year BETWEEN '2003' AND '2005' or Month ='5' AND Year BETWEEN '2003' AND '2005' or Month ='6' AND Year BETWEEN '2003' AND '2005' or Month ='7' AND Year BETWEEN '2003' AND '2005' or Month ='8' AND Year BETWEEN '2003' AND '2005'

But the problem with my query is it is not selecting january of 2004 and 2005. Any one with an idea of how to do this?

  • 写回答

2条回答 默认 最新

  • duandi8852752 2016-08-01 14:44
    关注
    SELECT * FROM myTable 
    WHERE ( Month >=2 AND Month <=8 AND year BETWEEN 2003 AND 2005) OR (Month=1 AND (year=2004 OR year=2005))
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 我的数据无法存进链表里
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大
  • ¥15 Oracle中如何从clob类型截取特定字符串后面的字符
  • ¥15 想通过pywinauto自动电机应用程序按钮,但是找不到应用程序按钮信息
  • ¥15 如何在炒股软件中,爬到我想看的日k线
  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
  • ¥15 (标签-MATLAB|关键词-多址)
  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)
  • ¥500 52810做蓝牙接受端