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

sqlserver連接查詢

發布時間: 2022-02-25 21:23:58

『壹』 sqlserver多表聯合查詢

select aa.a_name as 名字,count(aa.a_name) as 數量 from a aa,b bb where aa.a_id = bb.a_id group by aa.a_name

『貳』 sqlserver怎麼連接兩個不同的資料庫裡面的兩個不同的表進行關聯查詢,兩個資料庫不在同一個伺服器

這個簡單,使用sqlserver的 OPENDATASOURCE 函數,開啟另外一個資料庫的臨時鏈接就可以了。不過那台伺服器的資料庫必須開啟了IP訪問

『叄』 SQLSERVER 表 自身連接查詢問題

Select identity(int,1,1) id,* into #tem from M
select a.* from #tem a,#tem b where a.a=b.a and a.id=b.id-1 and a.b>b.b

依次增大的意思是後一行應該比前一行大1吧?
可否這么用
Select identity(int,1,1) id,* into #tem from M

select b.* from #tem a,#tem b
where
b.id-a.id=1 and
a.a=b.a
and (b.b-a.b!=1 or b.c-a.c!=1);

執行結束後
drop table #tem

『肆』 「sqlserver」三表聯如何查詢「sql」語句

假設學生表叫student,課程表叫class,選課表叫choose
1.三層嵌套的問題
select student.name from student where student.id IN
(select choose.sid from choose where choose.cid NOT IN
(select class.id from class where class.teacher='李明'))
2.一個內連接,一個嵌套
select student.name,avg(choose.score) from
student inner join choose on student.id=choose.sid
where student.id IN
(select choose.sid from choose
where choose.score<'60'
group by choose.sid
having count(choose.sid)>=2)
gruop by student.id
3.一個聯合查詢,一個嵌套查詢
select student.name from student
where student.id IN
(select c1.sid from choose c1 where choose.cid='1'
union
select c2.sid from choose c2 where choose.cid='2'
on c1.sid=c2.sid
)
4.其實就是自連接查詢和行列交換的問題:
select student.id,
(case choose.id when '1' then choose.score end) as 1號課成績,
(case choose.id when '2' then choose.score end) as 2號課成績,
from student inner join choose on student.id=choose.sid sc1,
student inner join choose on student.id=choose.sid sc2
where sc1.id='1'
and sc2.id='2'
and sc1.score>sc2.score

『伍』 sqlserver怎麼查看哪些地方連接資料庫了

1、通過系統的「性能」來查看:
開始->管理工具->性能(或者是運行裡面輸入
mmc)然後通過
添加計數器添加
SQL
的常用統計
然後在下面列出的項目裡面選擇用戶連接就可以時時查詢到sql
server資料庫連接數了。
不過此方法的話需要有訪問那台計算機的許可權,就是要通過windows賬戶登陸進去才可以添加此計數器。
2、通過系統表來查詢:
SELECT
*
FROM
[Master].[dbo].[SYSPROCESSES]
WHERE
[DBID]
IN
(
SELECT
[DBID]
FROM
[Master].[dbo].[SYSDATABASES]
WHERE
NAME='databaseName'
)
databaseName
是需要查看的資料庫,然後查詢出來的行數,就是當前的sql
server資料庫連接數。不過裡面還有一些別的狀態可以做參考用。
3、通過系統過程來查詢:
SP_WHO
'loginName'
loginName
是當然登陸Sql的用戶名,一般程序裡面都會使用一個username來登陸SQL這樣通過這個用戶名就能查看到此用戶名登陸之後佔用的連接了。
如果不寫loginName,那麼返回的就是所有的sql
server資料庫連接。

『陸』 isql連接SQLSERVER查詢中文表報錯

如:Windows (x86, 32-bit), MSI Installer Connector-ODBC

版本、cpu*64之類的自己看著辦吧

裝完之後,添加數據源(管理工具——數據源——添加----)

64位機器裝的32位odbc ,要去system32里的odbc打開,添加,不要去「管理工具」下的打開,去打開「C:\Windows\System32」下的odbcad32.exe
原來有截圖,今天看了截圖都不可讀了,懶得再截了
加完之後,

測試通過,就完成了准備工作

打開sqldbx,連接

dbmstype:odbc

是不是DNS就可以找到你要的庫了,哈哈

『柒』 求助,SQlServer用外連接查詢出未匹配的數據

可以用左連接(left join)查詢出未匹配的數據。原理是左連接時,將輸出左表的所有記錄,如果右表沒有匹配的記錄,則用null替代右表的欄位值,這樣在where子句里篩選出這些右表欄位值為null記錄,即可查詢出未匹配的數據。請參考下列實例:

查出沒有參加課程號為"A01"考試的學生資料

數據結構

student(sid,sname)

score(sid,cid,grade)

SQL語句

selecta.*fromstudentaleftjoin
(='A01')b
ona.sid=b.sidwhereb.sidisnull;

『捌』 sqlserver怎麼連接資料庫

要點:
1.確認伺服器端SQL服務埠號是否為:1433
2.如果不是1433,配置客戶端
3.建立伺服器端登錄帳號,確保角色及管理資料庫
一、查看伺服器端情況
1. 看ping 伺服器IP能否ping通。
這個實際上是看和遠程sql server 伺服器的物理連接是否存在。如果不行,請檢查網路,查看配置,當然得確保遠程sql server 伺服器的IP拼寫正確。
2. 在Dos或命令行下輸入telnet 伺服器IP 埠,看能否連通。
如telnet 202.114.100.100 1433
通常埠值是1433,因為1433是sql server 的對於Tcp/IP的默認偵聽埠。如果有問題,通常這一步會出問題。通常的提示是「……無法打開連接,連接失敗"。
如果這一步有問題,應該檢查以下選項。
1) 檢查遠程伺服器是否啟動了sql server 服務。如果沒有,則啟動。
2) 檢查sql server伺服器端有沒啟用Tcp/IP協議,因為遠程連接(通過網際網路)需要靠這個協議。檢查方法是,在伺服器上打開 開始菜單->程序->Microsoft SQL Server->伺服器網路實用工具,看啟用的協議里是否有tcp/ip協議,如果沒有,則啟用它。
3) 檢查伺服器的tcp/ip埠是否配置為1433埠。仍然在伺服器網路實用工具里查看啟用協議裡面的tcp/ip的屬性,確保默認埠為1433,並且隱藏伺服器復選框沒有勾上。
事實上,如果默認埠被修改,也是可以的,但是在客戶端做telnet測試時,寫伺服器埠號時必須與伺服器配置的埠號保持一致。如果隱藏sql server伺服器復選框被勾選,則意味著客戶端無法通過枚舉伺服器來看到這台伺服器,起到了保護的作用,但不影響連接,但是Tcp/ip協議的默認埠將被隱式修改為2433,在客戶端連接時必須作相應的改變(具體方式見 二:設置客戶端網路實用工具)。
4) 如果伺服器端操作系統打過sp2補丁,則要對windows防火牆作一定的配置,要對它開放1433埠,通常在測試時可以直接關掉windows防火牆(其他的防火牆也關掉最好)。(4、5步我沒有做就成功了)
5) 檢查伺服器是否在1433埠偵聽。如果sql server伺服器沒有在tcp連接的1433埠偵聽,則是連接不上的。檢查方法是在伺服器的dos或命令行下面輸入
netstat -a -n 或者是netstat -an,在結果列表裡看是否有類似 tcp 127.0.0.1 1433 listening 的項。如果沒有,則通常需要給sql server 2000打上至少sp3的補丁。其實在伺服器端啟動查詢分析器,輸入select @@version 執行後可以看到版本號,版本號在8.0.2039以下的都需要打補丁。
如果以上都沒問題,這時你再做telnet 伺服器ip 1433 測試,將會看到屏幕一閃之後游標在左上角不停閃動。此時,你馬上可以開始在企業管理器或查詢分析器連接

『玖』 sqlserver資料庫"子連接"count數量查詢

selecta.plate_number車牌,isnull(b.超速,0)超速,isnull(c.超載,0)超載
fromcar_reportaleftjoin
(selectplate_number,COUNT(*)as超速fromexceed_reportgroupbyplate_number)b
ona.plate_number=b.plate_numberleftjoin
(selectplate_number,COUNT(*)as超載fromassociat_reportgroupbyplate_number)c
ona.plate_number=c.plate_number