1 MySQL中如何實(shí)現(xiàn)以下SQL查詢 (SELECT S.Name FROM STUDENT S, TRANSCRIPT T WHERE S.StudId = T.StudId AND T.CrsCode = 'CS305') INTERSECT (SELECT S.Name FROM STUDENT S, TRANSCRIPT T WHERE S.StudId = T.StudId AND T.CrsCode = 'CS315') 請各位不吝賜教,小弟先謝過~ 解: 取交集 select a.* from ( SELECT S.Name FROM STUDENT S, TRANSCRIPT T WHERE S.StudId = T.StudId AND T.CrsCode = 'CS305' ) as a cross join ( SELECT S.Name FROM STUDENT S, TRANSCRIPT T WHERE S.StudId = T.StudId AND T.CrsCode = 'CS315' ) as b on a.Name = b.Name;
2. SELECT * FROM ( SELECT DISTINCT col1 FROM t1 WHERE... UNION ALL SELECT DISTINCT col1 FROM t1 WHERE... ) AS tbl GROUP BY tbl.col1 HAVING COUNT(*) = 2
3. 交集: SELECT * FROM table1 AS a JOIN table2 AS b ON a.name =b.name 舉例: 表a: FieldA 001 002 003 表b: FieldA 001 002 003 004 請教如何才能得出以下結(jié)果集,即表A, B行交集 FieldA 001 002 003 答案:select a.FieldA from a inner join b on a.FieldA=b.FieldA 差集: NOT IN 表示差集 SELECT * FROM table1 WHERE name NOT IN (SELECT name FROM table2)
您可能感興趣的文章:
MySql 按時(shí)間段查詢數(shù)據(jù)方法(實(shí)例說明)mysql如何查詢某一時(shí)間段內(nèi)沒有賣出的商品mysql 按照時(shí)間段來獲取數(shù)據(jù)的方法清空mysql 查詢緩存的可行方法MySQL查詢隨機(jī)數(shù)據(jù)的4種方法和性能對比mysql隨機(jī)查詢?nèi)舾蓷l數(shù)據(jù)的方法MySql實(shí)現(xiàn)跨表查詢的方法詳解Mysql中分頁查詢的兩個(gè)解決方法比較記錄mysql性能查詢過程的使用方法mysql嵌套查詢和聯(lián)表查詢優(yōu)化方法MySQL大表中重復(fù)字段的高效率查詢方法MySql查詢時(shí)間段的方法