SQL Получить данные из первой таблицы на основе критериев поиска во второй таблице - PullRequest
0 голосов
/ 27 мая 2019

У меня есть 2 таблицы. Я хочу получить данные из первой таблицы в зависимости от того, где условие применено ко второй таблице.

PHARMASTOCK(1)      Pharma Products(2)
ID                  ProductID   
ProductID           GenericName 
TradeName           TradeName   
MRP                 Supplier    
Rate                Manufacturer    
Stock               PurchasePTR 
Batch               UnitRate    
Expiry              MRP 
StockSection    

Это хранимая процедура SQL, которую я написал, но она не работаеткак и ожидалось!

@StockSupplier varchar(50), @StockManufacturer Varchar(50)
AS


SELECT  PharmaStock.ProductID,PharmaStock.TradeName,PharmaStock.MRP,Rate,Batch,Expiry,StockSection,Stock,Supplier,Manufacturer 
from PharmaStock 
    Full JOIN PharmaProducts ON PharmaStock.ProductID = PharmaProducts.ProductID 
where Supplier  like + @StockSupplier + '%' and Manufacturer  like + @StockManufacturer + '%'
order by Manufacturer asc

Ответы [ 3 ]

0 голосов
/ 27 мая 2019
SELECT  PS.ProductID,PS.TradeName,PS.MRP,PS.Rate,PS.Batch,PS.Expiry,PS.StockSection,PS.Stock,PP.Supplier,PP.Manufacturer 
    from PharmaStock PS
        inner JOIN PharmaProducts PP ON PS.ProductID = PP.ProductID 
    where Supplier  like CONCAT(@StockSupplier , '%') and Manufacturer  like CONCAT(@StockManufacturer ,'%') order by Manufacturer asc

Функция конкатенации изменяется в запросе, а затем символом плюса (после аналогичного необходимо удалить).

0 голосов
/ 27 мая 2019
SELECT  PharmaStock.ProductID,PharmaStock.TradeName,PharmaStock.MRP,Rate,Batch,Expiry,StockSection,Stock,Supplier,Manufacturer 
from PharmaStock 
INNER JOIN PharmaProducts ON PharmaStock.ProductID = PharmaProducts.ProductID 
where Supplier  like  @StockSupplier + '%' and Manufacturer  like  @StockManufacturer + '%'
order by Manufacturer asc
0 голосов
/ 27 мая 2019
    SELECT  PharmaStock.ProductID, 
PharmaStock.TradeName, 
PharmaStock.MRP, 
PharmaStock.Rate, 
PharmaStock.Batch, 
PharmaStock.Expiry, 
PharmaStock.StockSection, 
PharmaProducts.Supplier, 
PharmaProducts.Manufacturer  
FROM PharmaStock 
        INNER JOIN  PharmaProducts ON PharmaStock.ProductID = PharmaProducts.ProductID WHERE PharmaProducts.Supplier  LIKE  '%%' and PharmaProducts.Manufacturer  LIKE  '%%' 
ORDER BY PharmaProducts.Manufacturer asc

передать строки поставщику и производителю для дальнейшей фильтрации результатов объединения.

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