2010-12-14 3 views
0

У меня есть этот запрос:Объединение двух MS Access запрашивает

SELECT "I1" & "," & "I2" AS Item_set, Round(Sum([T1].Fuzzy_Value)/Count(*),15) AS Support 
    FROM (SELECT * 
    FROM Prune AS t 
    WHERE t.Trans_ID IN 

     (SELECT t1.Trans_ID FROM (

     SELECT *FROM Prune WHERE [Nama]="I1") AS t1 
     INNER JOIN (SELECT * FROM Prune WHERE [Nama]="I2") AS t2 ON t1.Trans_ID = t2.Trans_ID) 

    AND t.Nama IN ("I1","I2")) AS T1; 

И Ttrans запрос

SELECT Count([Trans_ID].[Trans_ID]) AS Expr1 
FROM Trans_ID; 

мне нужно изменить Count (*) от:

SELECT "I1" & "," & "I2" AS Item_set, Round(Sum([T1].Fuzzy_Value)/Count(*),15) 

в Ttrans запроса.

Я попытался с помощью

SELECT "I1" & "," & "I2" AS Item_set, Round(Sum([T1].Fuzzy_Value)/ttrans.Expr1,15) AS Support 
FROM (SELECT * 
FROM Prune AS t 
WHERE t.Trans_ID IN 

    (SELECT t1.Trans_ID FROM (

    SELECT *FROM Prune WHERE [Nama]="I1") AS t1 
    INNER JOIN (SELECT * FROM Prune WHERE [Nama]="I2") AS t2 ON t1.Trans_ID = t2.Trans_ID) 

AND t.Nama IN ("I1","I2")) AS T1, ttrans; 

Но я получил ошибку вроде этого:

You tried to execute a query that does not include the specified expression 
'Round(sum([T1].Fuzzy_Value/ttrans.Expr1,15)' as part of an aggregate function 

идеи, как это исправить?

Примечание: Я пытаюсь найти 2 сочетание всех элемента в базе данных транзакций и получить результат, как этот

ITEM  Support 
I1, I2  0.xxxxxxxxx 

, где поддержка является (общая сделка, содержащая предмет I1 и I2/общая сделка) -> отметить, что я использую Ttrans запрос, чтобы получить общую стоимость сделки

Примечание2: Я использую MS Access Note3:

Ttrans таблица будет выглядеть следующим образом

Expr1 
270200 

ответ

0

как-то я найти ответ:

я попытался с помощью

SELECT "I1" & "," & "I2" AS Item_set, Round(Sum([T1].Fuzzy_Value)/sum(ttrans.Expr1),15) 

это сработало чудо

0

Try:

SELECT "I1" & "," & "I2" AS Item_set, Round(Sum([T1].Fuzzy_Value)/ttrans.Expr1,15) AS Support 
FROM (SELECT * 
FROM Prune AS t 
WHERE t.Trans_ID IN 

    (SELECT t1.Trans_ID FROM (

    SELECT *FROM Prune WHERE [Nama]="I1") AS t1 
    INNER JOIN (SELECT * FROM Prune WHERE [Nama]="I2") AS t2 ON t1.Trans_ID = t2.Trans_ID) 

AND t.Nama IN ("I1","I2")) AS T1, ttrans 
GROUP BY "I1" & "," & "I2" 
Смежные вопросы