Разделение 2-х графических операторов в Postgresql - PullRequest
0 голосов
/ 16 мая 2018

У меня есть вопрос о делении 2-х чисел, приведенных ниже, которые дают мне ошибку внизу.

(SELECT COUNT(transactions.transactionNumber)
         FROM transactions
          INNER JOIN account ON account.sfid = transactions.accountsfid
          INNER JOIN transactionLineItems ON transactions.transactionNumber 
           = transactionLineItems.transactionNumber
          INNER JOIN products ON transactionLineItems.USIM = products.USIM
            WHERE products.gender = 'male' AND products.agegroup = 'adult' 
              AND transactions.transactionDate >= current_date - interval 
                  '730' day)/
            (SELECT COUNT(transactions.transactionNumber)
            FROM transactions
            WHERE transactions.transactionDate >= 
            current_date - interval '730' day)
ERROR:  syntax error at or near "/"
LINE 6: ...tions.transactionDate >= current_date - interval '730' day)/``

В чем проблема, по-моему, состоит в том, что мои операторы count создают таблицы, а проблема заключается в разделении таблиц, но как я могу заставить это разделение работать?После этого я хочу сравнить результат с процентами, например <0,2. </p>

Может кто-нибудь помочь мне с этим.

1 Ответ

0 голосов
/ 16 мая 2018

Это ваш полный запрос? Примерно так работает в Postgres 10:

SELECT (SELECT COUNT(id) FROM test WHERE state = false) / (SELECT COUNT(id) FROM test WHERE state = true) as y

Дополнительные SELECT перед обоими подзапросами с разделением - вот что важно. В противном случае я также получаю ошибку, которую вы упомянули.

См. Также мою DB Fiddle версию этого запроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...