當前位置:首頁 » 編程語言 » sql語句關聯查詢

sql語句關聯查詢

發布時間: 2022-02-02 05:19:08

sql聯合查詢語句

A表欄位stuid,stuname
B表欄位bid,stuid,score,coursename,status

CREATE TABLE A#(
stuid INT,
stuname VARCHAR(10)
);

CREATE TABLE B# (
bid INT,
stuid INT,
score INT,
coursename VARCHAR(10),
status INT,
);

INSERT INTO A#
SELECT 1, '張三' UNION ALL
SELECT 2, '李四' UNION ALL
SELECT 3, '王五' UNION ALL
SELECT 4, '趙六'
;

INSERT INTO B#
SELECT 1, 1, 100, '語文', 0 UNION ALL
SELECT 2, 1, 99, '數學', 1 UNION ALL
SELECT 3, 2, 88, '語文', 0 UNION ALL
SELECT 4, 2, 88, '數學', 1 UNION ALL
SELECT 5, 3, 77, '語文', 0 UNION ALL
SELECT 6, 3, 77, '數學', 0 UNION ALL
SELECT 5, 4, 66, '語文', 1 UNION ALL
SELECT 6, 4, 66, '數學', 1
;

SELECT
A#.stuid,
B#.score,
B#.coursename,
B#.status
FROM
A# JOIN B#
ON (A#.stuid = B#.stuid AND B#.status = 1)
WHERE
NOT EXISTS (
SELECT
1
FROM
B# sub
WHERE
A#.stuid = sub.stuid
AND sub.status = 1
AND sub.score > B#.score
)

stuid score coursename status
----------- ----------- ---------- -----------
1 99 數學 1
2 88 數學 1
4 66 語文 1
4 66 數學 1

(4 行受影響)

註:
stuid = 3的,2門課程的 status 都為0,因此無數據顯示。
stuid = 4 的,2門課程都等於 max(score), 因此顯示出2行數據。

⑵ 一個sql語句聯合查詢的問題

select top 12 * from artinfo where classpath like (select top 1 belonglist from artclass where charindex('>5>',belonglist)>0 order by id)

⑶ sql語句如何將三個表進行關聯查詢

b裡面應該是沒有id的,應該是b裡面有個列與a相關另一個列與c相關
a與c沒關系,這樣才會出現3表關聯的需求

⑷ SQL語句-關聯查詢

--試試下面的語句試試:
select aa.* from (select count(a.autonumb),autonumb,sum(a.DetailPrice) as Moneya from Bookdatail a group by a.autonumb) aa left join BookCollect bb on aa.autonumb = bb.autonumb where isnull(aa.Moneya,0)<>isnull(bb.CollectPrice,0)

⑸ sql聯合查詢語句(兩張表)

sql聯合查詢語句(兩張表)是:

select A.ID,A.VALUE,A.TYPE,A.NAME,B.KEY,B.ID,B.VALUE,B.NAME
min(VALUE),max(VALUE) from A left join B on A.ID = B.ID
where B.NAME="你輸入的名字"
and B.VALUE > (select min(VALUE) from B where NAME="你輸入的名字"))
and B.VALUE < (select min(VALUE) from B where NAME="你輸入的名字"));

⑹ SQL語句如何寫,能對一個表進行關聯查找

select a.typename 父類,b.typename 子類 from ball_newstype a, ball_newstype b where a.id=b.parentid

⑺ sql語言兩表關聯查詢語句

通過班級關聯:
select
count(學號) as 人數
,a.班級
,b.班主任
from a表 a
inner join b表 b on a.班級 = b.班級
group by a.班級,b.班主任
;

⑻ 兩表關聯查詢SQL語句的,要怎麼寫

1、首先打開資料庫客戶端Navicat Premium 15工具,點擊並打開一個資料庫連接。

⑼ sql聯合查詢語句

時間長是應該是因為你沒有建立索引。而且語句沒有必要寫的那麼復雜。
下面的代碼即可:

insert into c select (a.姓名) 姓名,(SUBSTRING(b.登記時間,7,2))rq,(SUBSTRING(b.登記時間,9,2)+':'+SUBSTRING(b.登記時間,11,2)) 時間,'01' from b,a where b.編號=a.編號

⑽ SQL語句 聯合查詢

是二條結果 呀,因為你的查詢條件是a.aid=b.aid,取的是AID為1的記錄在b表中aid 都是1

熱點內容
外置內存卡不能存儲 發布:2024-05-08 11:43:02 瀏覽:506
javalist合並 發布:2024-05-08 11:43:01 瀏覽:476
校園網內怎麼搭建伺服器 發布:2024-05-08 11:28:33 瀏覽:72
adb伺服器是什麼資料庫 發布:2024-05-08 11:27:43 瀏覽:363
一鍵編譯vscode 發布:2024-05-08 11:27:37 瀏覽:869
哪個型號的安卓機性價比好 發布:2024-05-08 11:05:10 瀏覽:657
蘋果存儲空在哪裡 發布:2024-05-08 10:37:16 瀏覽:641
python獲取系統時間 發布:2024-05-08 10:32:24 瀏覽:634
瀏覽器上傳文件 發布:2024-05-08 10:31:17 瀏覽:92
編程強度高 發布:2024-05-08 10:24:59 瀏覽:279