Помогите с запросом. Работа с датами.

beba

Новичок
Помогите с запросом. Работа с датами.

есть таблицы:
PHP:
=======================
products_credit        
=======================
products_credit_id                   
products_credit_date_create  
products_credit_parent_id        
products_credit_pay                 
products_credit_customers_id  
=======================

=======================
products_credit_desccription   
=======================
products_credit_description_id 
producst_credit_id                     
products_credit_comments       
products_credit_documents    
=======================
в них хранится информация о кредите.
таким образом.

каждый новый кредит заноится таким образом:
в таблицу products_credit
products_credit_id - autoincrement,
products_credit_date_create - дата в формате '0000-00-00 00:00:00' создания документа кредит
products_credit_parent_id - 0 (т.к. кредит новый)
products_credit_pay - деньги, которые заплачены, первоначальным взносом.
products_credit_customers_id - индификатор пользователя, заплатившего.

в таблицу products_credit_description
products_credit_description_id auto_increment
producst_credit_id - mysql_insert_id()
products_credit_comments - комментарии
products_credit_documents - необх. документы.

когда человек приходит погашать задолженность по кредиту, то выбирается кредит из списка, а в таблицы заполняется след. информация.
products_credit_id - autoincrement,
products_credit_date_create - дата в формате '0000-00-00 00:00:00' погашения задолженности
products_credit_parent_id - id кредита, которого погашают
products_credit_pay - деньги, который платит клиент
далее, все так же, как и в случае создания нового кредита.

список всех кредитов получаю таким образом:
Код:
select t.*, t2.*
from products_credit t, products_credit_description t2
where t.products_credit_id=t2.products_credit_id and t.products_credit_parent_id=0
Это описал ситуацию, теперь задача.
Нужно создать запрос, который выбирал бы всех задолжников, т.е. тех людей, у кого дата последнего погашения кредита превысила 1 месяц.
Помогите составить его, единственный вариант, который мне приходит, так это запрос + перебор, но он не подходит, т.к. запрос этот используется для разделения результата на несколько страниц (split page), а так же еще в нек. случаях.

-~{}~ 13.03.06 19:46:

Никто не поможет???
Может запутанно объяснил??
задайте наводящий вопрос, попытаюсь пояснить...
 

chira

Новичок
список кредитов по которым должны на текущую дату
Код:
select t.id, MAX(IFNULL(tt.date_create,t.date_create)) date_create
from products_credit t
LEFT JOIN products_credit tt
  ON tt.parent_id = t.id
WHERE t.products_credit_parent_id=0
GROUP BY t.id 
HAVING date_create < DATE_SUB(NOW(),INTERVAL 1 MONTH)
 

beba

Новичок
Спасиб... я уже сам разобрался..
делаю так:
Код:
select t.*, t2.*
from products_credit t, products_credit_description t2
where t.products_credit_id=t2.products_credit_id and t.products_credit_parent_id=0 
and month(t.products_credit_date_create + interval 1 month)=month(current_date)
Вродь так, но за помощь все равно спасибо.
----------------
ой тока вместо
month(t.products_credit_date_create + interval 1 month)=month(current_date)
нужно
t.products_credit_date_create + interval 1 month<=current_date)

-~{}~ 14.03.06 00:28:

всеж мой пример не правилный, а вот твой в яблочко, тока теперь в 24 часа я всеж сел и пересмотрел его, по кусочкам разобрал для себя, и уяснил.
 
Сверху