假设我有一个包含pID
值和amount
值的表,
| pID | amount | date |
| 1 | 20 | 2014-10-1 |
| 1 | 30 | 2014-12-30 |
| 2 | 40 | 2014-10-10 |
| 2 | 3 | 2014-12-01 |
我想同时使用mysql查询和php(循环)来获取与pID
相对应的amount
,仅针对不同的行只有一个pID
,
以下是我希望我的回答在
中的方式对于queryAns 1
我选择从2014-10-1
到2014-10-30
queryAns 1
| pID | amount |
| 1 | 20 |
| 2 | 40 |
对于queryAns 2
我选择从2014-12-1
到2014-12-30
queryAns 2
| pID | amount |
| 1 | 30 |
| 2 | 3 |
更新
对不起伙计们,我想我错过了maintable
中的约会对象
条件将基于特定的月份和年份。
我还希望根据日期范围查询数据,例如从中选择数据
2014-10-1至2014-10-10
感谢。
答案 0 :(得分:2)
你可以这样选择:
SELECT
maintable.pID,
maintable.amount,
DATE_FORMAT(maintable.date, '%Y-%m') as date
FROM
maintable
WHERE
maintable.date BETWEEN '2014-10-01' AND '2014-10-10'
OR maintable.date BETWEEN '2014-12-01' AND '2014-12-05'
GROUP BY
YEAR(maintable.date), MONTH(maintable.date)
答案 1 :(得分:0)
您的第一个查询看起来应该相似: -
SELECT *
FROM ( SELECT @row := @row +1 AS rownum
FROM ( SELECT @row :=0) r, mainTable
) ranked
WHERE rownum % n = 1;
第二个应该看起来很像: -
SELECT *
FROM ( SELECT @row := @row +1 AS rownum
FROM ( SELECT @row :=0) r, mainTable
) ranked
WHERE rownum % n = 0;