Kak perepisath etat zapros?

pX
Дата: 25.09.2005 00:39:16
Mne nuzna perenesti etu tablicu v MySQL 4.1.14 no tak kak v MySQL netu sohrjanjajemih query to ja neznaju kak napisath etat zapros.

Eta zapros v kotorom vibirajutsa sootvestvujushije zapisi po date.
SELECT tbl_activities.ac_standid, tbl_activities.ac_productid, tbl_activities.ac_datefrom, 
tbl_activities.ac_dateto, tbl_activities.ac_reserved
FROM tbl_activities
WHERE (((tbl_activities.ac_datefrom)>#1/1/2006#) 
AND ((tbl_activities.ac_dateto)<#1/1/2008#) AND ((tbl_activities.ac_reserved)=Yes));

A eta zapros gde vidna kakije zapisi zapolneni a kakije pustije.
SELECT tbl_stand.st_stanfnr, tbl_product.pr_product, qry_DateBetween.ac_datefrom, qry_DateBetween.ac_dateto, 
qry_DateBetween.ac_reserved
FROM (qry_DateBetween RIGHT JOIN tbl_stand ON qry_DateBetween.ac_standid=tbl_stand.st_standid) 
LEFT JOIN tbl_product ON qry_DateBetween.ac_productid=tbl_product.pr_productid;

Kak ih objedinith v odin zapros? Pokazite pozalosta hoth na Accesse. Potom peredelath dlja MySQL uze ne tak bolezneno.

Za rane sposibo.
Владимир Саныч
Дата: 25.09.2005 00:44:02
Перевожу из транслита в не транслит.

Мне нузна перенести ету таблицу в МыСQЛ 4.1.14 но так как в МыСQЛ нету сохрйанйайемих qуеры то йа незнайу как написатх етат запрос.

Эта запрос в котором вибирайутса соотвествуйушийе записи по дате.
СЭЛЭЦТ тбл_ацтивитиес.ац_стандид, тбл_ацтивитиес.ац_продуцтид, тбл_ацтивитиес.ац_датефром, 
тбл_ацтивитиес.ац_датето, тбл_ацтивитиес.ац_ресервед
ФРОМ тбл_ацтивитиес
WХЭРЭ (((тбл_ацтивитиес.ац_датефром)>#1/1/2006#) 
АНД ((тбл_ацтивитиес.ац_датето)<#1/1/2008#) АНД ((тбл_ацтивитиес.ац_ресервед)=Ыес));

А ета запрос где видна какийе записи заполнени а какийе пустийе.
СЭЛЭЦТ тбл_станд.ст_станфнр, тбл_продуцт.пр_продуцт, qры_ДатеБетwеен.ац_датефром, qры_ДатеБетwеен.ац_датето, 
qры_ДатеБетwеен.ац_ресервед
ФРОМ (qры_ДатеБетwеен РИГХТ ЙОИН тбл_станд ОН qры_ДатеБетwеен.ац_стандид=тбл_станд.ст_стандид) 
ЛЭФТ ЙОИН тбл_продуцт ОН qры_ДатеБетwеен.ац_продуцтид=тбл_продуцт.пр_продуцтид;

Как их обйединитх в один запрос? Показите позалоста хотх на Аццессе. Потом переделатх длйа МыСQЛ узе не так болезнено.

За ране спосибо.
(c)VIG
Дата: 25.09.2005 00:45:38
Имхо,на транслите было понятнее :)
nibbles
Дата: 25.09.2005 01:03:26
Владимир Саныч - хитрец - типа выкрутился :))
Если первый запрос - тот, что должен быть подзапросом, то в ANSI объединение будет выглядеть следующим образом:
SELECT S.st_stanfnr, P.pr_product, Q.ac_datefrom, Q.ac_dateto, Q.ac_reserved
FROM 
	(
	SELECT A.ac_standid, A.ac_productid, A.ac_datefrom, A.ac_dateto, A.ac_reserved
	FROM tbl_activities AS A
	WHERE A.ac_datefrom>#1/1/2006# AND A.ac_dateto<#1/1/2008# AND A.ac_reserved=Yes
	) Q 
RIGHT JOIN tbl_stand ON Q.ac_standid=S.st_standid 
LEFT JOIN tbl_product ON Q.ac_productid=P.pr_productid
Владимир Саныч
Дата: 25.09.2005 12:39:12
nibbles
Владимир Саныч - хитрец - типа выкрутился :))

Я даже не пытался делать вид, что отвечаю на вопрос.
pX
Дата: 25.09.2005 15:32:37
Etat zapros nerabotajet.
вадя
Дата: 25.09.2005 17:51:25
так должно


SELECT S.st_stanfnr, P.pr_product, Q.ac_datefrom, Q.ac_dateto, Q.ac_reserved
FROM
(
SELECT A.ac_standid, A.ac_productid, A.ac_datefrom, A.ac_dateto, A.ac_reserved
FROM tbl_activities AS A
WHERE A.ac_datefrom>#1/1/2006# AND A.ac_dateto<#1/1/2008# AND A.ac_reserved=Yes
) as Q
RIGHT JOIN tbl_stand ON Q.ac_standid=S.st_standid
LEFT JOIN tbl_product ON Q.ac_productid=P.pr_productid
nibbles
Дата: 25.09.2005 21:45:12
nibbles
Если первый запрос - тот, что должен быть подзапросом, то в ANSI объединение будет выглядеть следующим образом

Не ANSI, а ISO... вот балда, ошибся
ы
Дата: 25.09.2005 23:37:34
2 вадя
Это адп, очевидно, а там "as" можно опускать.

2 афтор
а Nibbles пропустил псевдонимы последних таблиц:
SELECT S.st_stanfnr, P.pr_product, Q.ac_datefrom, Q.ac_dateto, Q.ac_reserved
FROM
(
SELECT A.ac_standid, A.ac_productid, A.ac_datefrom, A.ac_dateto, A.ac_reserved
FROM tbl_activities AS A
WHERE A.ac_datefrom>#1/1/2006# AND A.ac_dateto<#1/1/2008# AND A.ac_reserved=Yes
) Q
RIGHT JOIN tbl_stand S ON Q.ac_standid=S.st_standid
LEFT JOIN tbl_product P ON Q.ac_productid=P.pr_productid

2 ВС
5 баллов! :))