當前位置:首頁 » 編程語言 » sql語句外表查詢
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql語句外表查詢

發布時間: 2023-08-09 02:26:29

① 怎樣用sql語句查詢一個資料庫中的所有表

--讀取庫中的所有表名
select name from sysobjects where xtype='u'
--讀取指定表的所有列名
select name from syscolumns where id=(select max(id) from sysobjects where xtype='u' and name='表名')
獲取資料庫表名和欄位
sqlserver中各個系統表的作用
sysaltfiles 主資料庫 保存資料庫的文件
syscharsets 主資料庫 字元集與排序順序
sysconfigures 主資料庫 配置選項
syscurconfigs 主資料庫 當前配置選項
sysdatabases 主資料庫 伺服器中的資料庫
syslanguages 主資料庫 語言
syslogins 主資料庫 登陸帳號信息
sysoledbusers 主資料庫 鏈接伺服器登陸信息
sysprocesses 主資料庫 進程
sysremotelogins主資料庫 遠程登錄帳號
syscolumns 每個資料庫 列
sysconstrains 每個資料庫 限制
sysfilegroups 每個資料庫 文件組
sysfiles 每個資料庫 文件
sysforeignkeys 每個資料庫 外部關鍵字
sysindexs 每個資料庫 索引
sysmenbers 每個資料庫 角色成員
sysobjects 每個資料庫 所有資料庫對象
syspermissions 每個資料庫 許可權
systypes 每個資料庫 用戶定義數據類型
select 列名=name from syscolumns where id=object_id(N'要查的表名')

② SQL里3個表的連接查詢的語句怎麼寫呀

select * from 表1,表2,表3 where 表1.欄位=表2.欄位 and 表1.欄位=表3.欄位。

結構化查詢語言(Structured Query Language)簡稱SQL,是一種特殊目的的編程語言,是一種資料庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系資料庫系統。

一、簡介

(1)SQL語言1974年由Boyce和Chamberlin提出,並首先在IBM公司研製的關系資料庫系統SystemR上實現。由於它具有功能豐富、使用方便靈活、語言簡潔易學等突出的優點,深受計算機工業界和計算機用戶的歡迎。

(2)1980年10月,經美國國家標准局(ANSI)的資料庫委員會X3H2批准,將SQL作為關系資料庫語言的美國標准,同年公布了標准SQL,此後不久,國際標准化組織(ISO)也作出了同樣的決定。

SQL從功能上可以分為數據定義、數據操縱和數據控制。SQL的核心部分相當於關系代數,但又具有關系代數所沒有的許多特點,如聚集、資料庫更新等。它是一個綜合的、通用的、功能極強的關系資料庫語言。其特點是:

1、數據描述、操縱、控制等功能一體化。

2、兩種使用方式,統一的語法結構。SQL有兩種使用方式。一是聯機交互使用,這種方式下的SQL實際上是作為自含型語言使用的。另一種方式是嵌入到某種高級程序設計語言(如C語言等)中去使用。

前一種方式適合於非計算機專業人員使用,後一種方式適合於專業計算機人員使用。盡管使用方式不向,但所用語言的語法結構基本上是一致的。

3、高度非過程化。SQL是一種第四代語言(4GL),用戶只需要提出「干什麼」,無須具體指明「怎麼干」,像存取路徑選擇和具體處理操作等均由系統自動完成。

4、語言簡潔,易學易用。盡管SQL的功能很強,但語言十分簡潔,核心功能只用了9個動詞。SQL的語法接近英語口語,所以,用戶很容易學習和使用。

二、功能

SQL具有數據定義、數據操縱和數據控制。

1、SQL數據定義功能

能夠定義資料庫的三級模式結構,即外模式、全局模式和內模式結構。在SQL中,外模式有叫做視圖(View),全局模式簡稱模式( Schema),內模式由系統根據資料庫模式自動實現,一般無需用戶過問。

2、SQL數據操縱功能

包括對基本表和視圖的數據插入、刪除和修改,特別是具有很強的數據查詢功能。

3、SQL的數據控制功能

主要是對用戶的訪問許可權加以控制,以保證系統的安全性。

三、語句結構

結構化查詢語言包含6個部分:

1、數據查詢語言(DQL:Data Query Language)

其語句,也稱為「數據檢索語句」,用以從表中獲得數據,確定數據怎樣在應用程序給出。保留字SELECT是DQL(也是所有SQL)用得最多的動詞,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。這些DQL保留字常與其它類型的SQL語句一起使用。

2、數據操作語言(DML:Data Manipulation Language)

其語句包括動詞INSERT、UPDATE和DELETE。它們分別用於添加、修改和刪除。

3、事務控制語言(TCL)

它的語句能確保被DML語句影響地表的所有行及時得以更新。包括COMMIT(提交)命令、SAVEPOINT(保存點)命令、ROLLBACK(回滾)命令。

(2)sql語句外表查詢擴展閱讀:

SQL的語言特點

1、SQL風格統一

SQL可以獨立完成資料庫生命周期中的全部活動,包括定義關系模式、錄入數據、建立資料庫、查詢、更新、維護、資料庫重構、資料庫安全性控制等一系列操作,這就為資料庫應用系統開發提供了良好的環境,在資料庫投入運行後,還可根據需要隨時逐步修改模式,且不影響資料庫的運行,從而使系統具有良好的可擴充性。

2、高度非過程化

非關系數據模型的數據操縱語言是面向過程的語言,用其完成用戶請求時,必須指定存取路徑。而用SQL進行數據操作,用戶只需提出「做什麼」,而不必指明「怎麼做」,因此用戶無須了解存取路徑,存取路徑的選擇以及SQL語句的操作過程由系統自動完成。這不但大大減輕了用戶負擔,而且有利於提高數據獨立性。

3、面向集合的操作方式

SQL採用集合操作方式,不僅查找結果可以是元組的集合,而且一次插入、刪除、更新操作的對象也可以是元組的集合。

參考資料來源:網路-結構化查詢語言

③ SQL語句聯表查詢

SELECTitem,sum(a.need_pay) '需要支付金額',sum(b.paymoney) '已付金額'

FROM A,(SELECT b.A_id,sum(B.money) 'paymoney' FROM B group by B.A_id) b

where A.A_id = b.A_id

GROUP BY A.item

HAVINGsum(a.need_pay)<> sum(b.paymoney)

(3)sql語句外表查詢擴展閱讀:

關於sql語句連表查詢

語法

SELECT fields

FROM table1 INNER JOIN table2

ON table1.field1 compopr table2.field1 AND

ON table1.field2 compopr table2.field2 OR

ON table1.field3 compopr table2.field3;

也可以通過如下語法嵌套 JOIN 語句:

SELECT fields

FROM table1 INNER JOIN

(table2 INNER JOIN [( ]table3

[INNER JOIN [( ]tablex [INNER JOIN ...)]

ON table3.field3 compopr tablex.fieldx)]

ON table2.field2 compopr table3.field3)

ON table1.field1 compopr table2.field2;

LEFT JOIN 或 RIGHT JOIN 可以嵌套在 INNER JOIN 之中,但是 INNER JOIN 不能嵌套於 LEFT JOIN 或 RIGHT JOIN 之中。

④ sql 單表查詢語句 求高手幫忙

--總出席的天數
DECLARE @day_count int
select @day_count=count(*) from
(select substring(convert( varchar(10),signtime,120),1,10) a from sign group by substring(convert( varchar(10),signtime,120),1,10)) s;

--考勤表中出現的人
select m1.userid,m1.應考天數,m2.簽到次數,m3.簽退次數,ISNULL(m4.遲到次數,0) 遲到次數,ISNULL(m5.早退次數,0) 早退次數 from (
select userid,@day_count 應考天數 from sign group by userid) m1 left join (
--每人簽到的次數
select count(signid) 簽到次數, userid from sign where signflag=1 group by userid ) m2 on m1.userid=m2.userid left join(
--每人簽退的次數
select count(signid) 簽退次數, userid from sign where signflag=0 group by userid ) m3 on m1.userid=m3.userid left join (
--每人遲到次數
select count(signid) 遲到次數, userid from sign where signflag=1 and convert(varchar(5) ,signtime,114)>'08:00' group by userid ) m4 on m1.userid=m4.userid left join (
--每人早退次數
select count(signid) 早退次數, userid from sign where signflag=0 and convert(varchar(5) ,signtime,114)<'18:00' group by userid) m5 on m1.userid=m5.userid

--把這些語句再用left join 連在一起想要啥就有啥了,都到這步了計算你自己來吧

⑤ sql語句怎麼在一個資料庫中查找擁有同一欄位名的所有表

1、在Oracle資料庫中

select column_name,table_name from user_tab_columns where column_name= 'test_name'

2、在SqlServer資料庫中

SELECT COLUMN_NAME,TABLE_NAME FROM INFORMATION_SCHEMA.columns WHERE COLUMN_NAME='test_name'

SQL語言是一種特殊目的的編程語言,是一種資料庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系資料庫系統;同時也是資料庫腳本文件的擴展名。SQL語句無論是種類還是數量都是繁多的,很多語句也是經常要用到的,無論是高級查詢還是低級查詢,SQL查詢語句的需求是最頻繁的。

(5)sql語句外表查詢擴展閱讀:

資料庫是按照數據結構來組織、存儲和管理數據的倉庫,它產生於距今六十多年前,隨著信息技術和市場的發展,特別是二十世紀九十年代以後,數據管理不再僅僅是存儲和管理數據,而轉變成用戶所需要的各種數據管理的方式。

資料庫有很多種類型,從最簡單的存儲有各種數據的表格到能夠進行海量數據存儲的大型資料庫系統都在各個方面得到了廣泛的應用。資料庫技術是管理信息系統、辦公自動化系統、決策支持系統等各類信息系統的核心部分,是進行科學研究和決策管理的重要技術手段。

⑥ 如何用合適的sql語句查詢表中的內容

select a.name ,a.A as Java,b.B as 資料庫,c.C as 數據結構
from
(select name,score as A from tb_scores where course='Java')
a,
(select name,score as B from tb_scores where course='資料庫')
b,
(select name,score as C from tb_scores where course='數據結構')
c
where a.name=b.name and a.name=c.name

⑦ SQL的查詢語句怎麼寫

/*
SQL是3個表的查詢,會給出表以及3個表之間的約束關系
Student表
No編號
Name姓名
Birthday生日
bj班級
jg籍貫
adds地址
number電話

Course表
Kcbh課程編號
kcmc課程名稱

Source表
Cjguid(主鍵)
No編號
kcbh課程編號
cj成績
*/

--(1)查詢學生籍貫為『湖北』生日為1995-10-3的所有信息
select*
fromStudent
where1=1
andjg='湖北'--籍貫為『湖北』
andBirthday='1995-10-3'--生日為1995-10-3

--(2)查詢學生姓名為『王華』的各課程的平均分,最高分,最低分,總分。
select
avg(kcbh)as平均分,
max(kcbh)as最高分,
min(kcbh)as最低分,
sum(kcbh)as總分
fromSource
where1=1
andexists(select1
fromStudent.
where1=1
andStudent.No=Source.No
Name='王華'--姓名為『王華』
)

--(3)沒有太看題,大致是要求查詢4,5列以上的信息,其中3個表各包含一些信息
select
Student.Nameas學生,
Course.kcmcas課程,
Source.cjas成績
fromStudent,
Course,
Source,
where1=1
andStudent.No=Source.No
andCourse.Kcbh=Source.kcbh