мне нужно умножить значение столбца с другим значением столбца, а затем найти общую суммуSQL столбец умножения из другой суммы столбца
SubjectTable
SubjectMarksId SubjectCode Marks
1 4ww 50
2 8qw 50
3 7uy 50
MarksType
MarksTypeId MarksType StudentCount Marks
1 Sports 1 10
2 Math 1 10
3 English 1 1
4 Physics 1 10 // Marks sum(10+10+1*50+10) multiply condition, where MarksTypeId=3 with SubjectCode = 8qw in SubjectTable
вот как я пытался умножить
select StudentMark*(SELECT Marks AS SubjectMark
FROM SubjectTable
WHERE SubjectCode = '8qw')
from
(
SELECT Marks AS StudentMark
FROM MarksType
WHERE MarksTypeId= '3'
) src
наконец ниже это сумма, она работает нормально, но как умножить другое значение столбца, то найти общую сумму?
SELECT Student.StudentId, Student.Name, sum(MarksType.Marks) as TotalMarks
FROM
MarksType
INNER JOIN
MarksDetails on MarksType.MarksTypeId = MarksDetails.MarksTypeId
INNER JOIN
Student on Student.StudentId = MarksDetails.StudentId
group by Student.Name,Student.StudentId
любая помощь была бы замечательной.
UPDATE:
деталей таблицы менее обеспечить из-за ситуации, поэтому выход был неправ, во всяком случае, благодаря @Darka и Piyush. в следующий раз с моей стороны детали будут предоставлены ясным способом, если потребуется, я могу удалить этот вопрос с помощью модераторов. Потому что это может повлиять на изучение других людей.
Непонятно, как 'SubjectTable' связан с' MarksType'? И как выглядит «MarksDetails»? – Darka
Я имею в виду, почему MarksTypeId = '3' должен быть умножен, а другой нет ...? Как знать? – Darka
@stom: - Я думаю, ваш подход совершенно неправильный, вы не даете информацию о таблице и отношения, которые находятся в вашем запросе. У вас есть лучшее решение, если вы предоставляете таблицы struture с образцами данных и ожидаемым выходом. потому что то, что вы написали в своем вопросе, очень неясно, и его трудно найти логику позади этого – HaveNoDisplayName