![](/img/trans.png)
[英]'ORA-00933: SQL command not properly ended' when executing multiple Select statements in C#
[英]C# Executing multiple SQL Statements and display result n GridView
我正在使用VS2005和SQL Server 2005。
我試圖在兩個sql表上執行多個sql語句,這意味着我需要對兩個表進行一次檢查。
這兩個表是:
表1 : 用戶ID , 用戶名 。
表2 : 用戶ID , 狀態 。
以下是我需要執行的檢查,但我不知道我需要的確切SQL查詢是什么。
表1中存在的用戶應在表 2中存在
存在用戶表1是不應該有STATUS=DELETE
表2中
STATUS=DELETE
用戶應該存在於表1中 我是否可以知道如何形成此形式以簽入SQL查詢並在VS Sqldatasource中執行它們?
之后,將結果存儲在變量中並在GridView表中顯示它們。
非常感謝你的幫助。
因此,您有3種情況要抓:
這三種情況按以下順序在下面的WHERE子句中介紹。
SELECT *
FROM table1 t1
FULL OUTER JOIN table2 t2 ON t1.userid = t2.userid
WHERE (t2.userid IS NULL AND t1.userid IS NOT NULL)
OR (t2.status = 'DELETE' AND t1.userid IS NOT NULL)
OR (t2.userid IS NOT NULL AND t2.status <> 'DELETE' AND t1.userid IS NULL)
編輯:針對OP的評論,這是一個修改后的版本,它將根據情況#1將數據插入到table3
。 假設table3
是一個包含兩列的表,分別為userID
和problem
。
INSERT INTO table3
SELECT userID, 'No Matching Table2 Record'
FROM table1 t1
FULL OUTER JOIN table2 t2 ON t1.userid = t2.userid
WHERE (t2.userid IS NULL AND t1.userid IS NOT NULL)
您要在UserID
上join
表1和2,並排除刪除狀態。 然后在網格視圖中使用結果。
select t1.UserID, t1.Username
from Table1 t1
join Table2 t2 on t1.UserID = t2.UserID
where t2.Status != 'DELETE'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.