Имеет Uncaught Error: near "(": синтаксическая ошибка при попытке запустить запрос - PullRequest
0 голосов
/ 18 апреля 2019

Когда я пытаюсь выполнить этот запрос, я получаю сообщение об ошибке, которое упоминается ниже.я предполагаю, что ошибка лежит в моей первой строке запроса.который не становится решенным.Кто-нибудь может указать, где я не прав?

WITH processed_users 
 AS (SELECT LEFT(u.phone_country, 2) AS short_phone_country, 
            u.id 
     FROM   users u) 
    SELECT t.user_id, 
   t.merchant_country, 
   Sum(t.amount / fxr.rate / Power(10, cd.exponent)) AS amount 
   FROM   transactions t 
   JOIN fx_rates fx 
     ON ( fx.ccy = t.currency 
          AND fx.base_ccy = 'USD' ) x`
   JOIN currency_details cd 
     ON cd.currency = t.currency 
   JOIN processed_users pu 
     ON pu.id = t.user_id 
     WHERE  t.source = 'IA' 

Я получаю эту ошибку.

Uncaught Error: near "(": syntax error

1 Ответ

0 голосов
/ 18 апреля 2019

Я нашел бактрию в вашем запросе, и вам нужно SUBSTR, потому что левый недоступен на sqllite

WITH processed_users 
 AS (SELECT SUBSTR(u.phone_country,-length(u.phone_country), 2) AS short_phone_country, 
            u.id 
     FROM   users u
    ) 
    SELECT t.user_id, 
   t.merchant_country, 
   Sum(t.amount / fxr.rate / Power(10, cd.exponent)) AS amount 
   FROM   transactions t 
   JOIN fx_rates fx 
     ON ( fx.ccy = t.currency 
          AND fx.base_ccy = 'USD' ) x
   JOIN currency_details cd 
     ON cd.currency = t.currency 
   JOIN processed_users pu 
     ON pu.id = t.user_id 
     WHERE  t.source = 'IA' 

Я предпочитаю охватить t.amount / fxr.rate / Power(10, cd.exponent) линию парентезом

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