У меня есть 2 таблицы, в одной из которых хранятся точки пользователей, а в другой - продукты, которые были приобретены пользователями.Ошибка преобразования типа данных nvarchar в bigint в SQL Server в select statement
Я пытался найти точки сети, которые пользователь имеет. Поэтому, вычитая один из другого, я пробовал эти два вопроса, как представляется, проблема.
Я написал SQL запрос, чтобы найти разницу, но есть ошибка относительно приведения типа
select sum(point)
from UserPoints
where Userid = (select id
from AspNEtusers
where username ='1-V2-4128')
-
(
select sum(o.quantity*o.pointperitem) as Total
from AspNetusers as A
inner join
MyOrders as M
inner join OrderedProducts as O
on O.Orderid = M.id
on M.Userid= A.id
where A.username='1-V2-4128'
)
Ошибка брошено:
Ошибка преобразования типа данных NVARCHAR в BigInt
Затем я попробовал
select
sum(point)
from
UserPoints
where
Userid = (select id
from AspNEtusers
where username ='1-V2-4128')
- convert(
bigint(50),
(
select sum(o.quantity*o.pointperitem) as Total from AspNetusers as A inner join MyOrders as M inner join OrderedProducts as O
on O.Orderid = M.id
on M.Userid= A.id
where A.username='1-V2-4128')
)
Ошибка выброшен является
CAST или CONVERT: недопустимые атрибуты, заданные для типа «» BIGINT
Какие типы 'point',' количество' и 'pointperitem'? –
Ваш запрос не имеет смысла. Почему вы вычитаете «Total» из идентификатора пользователя? –
вопрос не содержит достаточной информации для ответа –