Niewłaściwa konwersja w widoku

0

Cześć, mam pewien problem. Próbuję zrobić widok dla apteki, który pokazuje dostawców wraz z rozliczeniem należności. Tylko, żeby obliczyć należność trzeba pomnożyć dwie wartości z dwóch różnych tabel. Zaznaczam, że kolumna Należność nie występuje w żadnej z tabel w posiadanym projekcie i jest przeze mnie zwyczajnie dodana.

CREATE VIEW REJESTR_NASZYCH_WPŁAT AS
SELECT        Dostawca.Dostawca_Imię, Dostawca.Dostawca_Nazwisko, Lek.Lek_ID, Lek.Cena, Partia_Leków.Ilość, 'Naleznosc' AS Naleznosc
FROM            Partia_Leków INNER JOIN
                         Lek ON Partia_Leków.Lek_ID = Lek.Lek_ID CROSS JOIN
                         Dostawca
WHERE        ('Naleznosc' = Partia_Leków.Ilość * Lek.Cena)

Coś takiego wywołuje mi błąd: Msg 245, Level 16, State 1, Line 1
Conversion failed when converting the varchar value 'Naleznosc' to data type int.

Nie wiem jak ustawić kolumnę Nalezność na int, bo sama z siebie robi się varchar

0

nie mozesz po prostu wymyslac skladni jezyka i liczyc ze magicznie zadziala, proponuje zebys sobie przerobil podstawy sql skoro masz sie nim zajmowac.
ponizsze powinno dzialac o ile takie tabele/kolumny istnieja i nie ma konfliktow w nazwach

CREATE VIEW REJESTR_NASZYCH_WPŁAT AS
SELECT        Dostawca.Dostawca_Imię, Dostawca.Dostawca_Nazwisko, Lek.Lek_ID, Lek.Cena, Partia_Leków.Ilość,  Partia_Leków.Ilość * Lek.Cena AS Naleznosc
FROM            Partia_Leków INNER JOIN
                         Lek ON Partia_Leków.Lek_ID = Lek.Lek_ID CROSS JOIN
                         Dostawca

dodatkowo rzuca sie w oczy 1) cross join (czy na pewno chcesz zrobic kazdy z kazdym?) 2) uzywanie polskich znakow w nazwach kolumn/tabel/widokow

1 użytkowników online, w tym zalogowanych: 0, gości: 1