2016-09-23 13 views
0

私は商品を注文する必要があるかどうかを確認するsql queryを作成しようとしています。2つのテーブルの価格を比較してメッセージを実行するクエリ

iはcolumnsすでに持っているfirst columnは、「メディア」をexableの法則」の値を持つ内部の値Prio_level ,Prio_Numberで一つのテーブルPriority_lvlを持っている......とsecond columnは数字を持っている'50','100'

私の第二のテーブルProductscolumns Pro_Quantityには私の製品能力があります。私の他のcolumnPro_Capa_levelの値はPrio_levelで、他のクエリですでに挿入されています。

だから私は列Pro_QuantityPrio_NumberPro_Capa_levelは、製品である何のためにするたびに依存未満の場合は私に語ったクエリを必要とする....

テーブルPriority_lvl

CREATE TABLE [dbo].[Priority_lvl](
    [Prio_id] [int] IDENTITY(1,1) NOT NULL, 
    [Prio_level] [varchar](50) NOT NULL, 
    [Prio_Number] [int] NOT NULL 
) ON [PRIMARY] 

テーブルProducts

CREATE TABLE [dbo].[Products](
    [Pro_Id] [int] NOT NULL, 
    [Pro_Name] [varchar](50) NOT NULL, 
    [Pro_Price] [float] NULL, 
    [Pro_Quantity] [int] NULL, 
    [Pro_Supplier_id] [int] NOT NULL, 
    [Pro_Tax] [float] NOT NULL, 
    [Cat_products] [varchar](50) NULL, 
    [Pro_Capa_level] [varchar](50) NULL, 
CONSTRAINT [PK_Products] PRIMARY KEY CLUSTERED 
(
    [Pro_Id] ASC 
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] 
) ON [PRIMARY] 

ここは私の試みですが、ひどいです

SELECT * FROM Products P INNER JOIN .Products ON Products.Pro_Capa_level= Priority_lvl.Prio_level WHERE Pro_Capa_level = Prio_level AND Pro_Quantity<=Prio_Number ; 

、ここで私が

public ArrayList<Update_del_insert_products> getproList() 
    { 
     ArrayList <Update_del_insert_products> proList =new ArrayList <Update_del_insert_products>(); 
     Connection connection =getConnection(); 
      SELECT * FROM Products P INNER JOIN .Products ON Products.Pro_Capa_level= Priority_lvl.Prio_level WHERE Pro_Capa_level = Prio_level AND Pro_Quantity<=Prio_Number ; 
     Statement stt; 
     ResultSet rss; 
     try{ 
      stt = connection.createStatement(); 
      rss = stt.executeQuery(query); 
      Update_del_insert_products update_del_insert_products ; 
      while(rss.next()) 
      { 
       update_del_insert_products = new Update_del_insert_products (rss.getString("Pro_Id"),rss.getString("Pro_Name"),rss.getString("Pro_Price"),rss.getString("Pro_Quantity"),rss.getString("Pro_Supplier_id"),rss.getString("Pro_Tax"),rss.getString("Cat_products"),rss.getString("Pro_Capa_level")); 
       proList.add(update_del_insert_products); 
      } 
      }catch (Exception e){ 
       e.printStackTrace(); 
      } 
     return proList; 
    } 
+2

を実行しているあなたは、実際のテーブルスキーマのPLSを投稿することができます – LogicalMan

+2

何かがクエリで奇妙です。この「製品P INNER JOIN。製品」は、「優先P INNER JOIN製品」のようなものではないでしょうか? –

+0

プライオリティ付近でメッセージ構文エラーが発生しました... –

答えて

0
String query ="SELECT * FROM Priority_lvl INNER JOIN Products ON 
Products.Pro_Capa_level= Priority_lvl.Prio_level WHERE Pro_Capa_level = Prio_level 
AND Pro_Quantity<=Prio_Number "; 
関連する問題