1
我必須承認我仍然是SQL的新手,我試圖做的是顯示客戶名稱與客戶在其賬戶中擁有的賬戶數量的查詢例如:腳本對於每個擁有賬戶數量的客戶端SQL
表:
dbo.Client:
ClientId PK, BIGINT, NOT NULL
Name VARCHAR, NOT NULL
Last VARCHAR, NOT NULL
RFC VARCHAR, NOT NULL
dbo.BankAccount:
AccountId PK, BIGINT, NOT NULL
ClientId FK, BIGINT, NOT NULL
NoAccount VARCHAR, NOT NULL
Balance DECIMAL (18,2),NOT NULL
IsCredit BIT, NOT NULL
通過使查詢瞭解客戶賬戶
SELECT *
FROM [dbo].[Clientes] a
INNER JOIN [dbo].[CuentasBancarias] b ON a.ClienteId = b.ClienteId
顯示一個查詢:
我想表明的是,例如這個表,其中列「號賬戶「 是我想要把他的賬戶的每個客戶的計數類型...
SELECT DISTINCT (a.ClienteId),
a.Apellidos, a.Nombre, a.RFC,
'Number Account' AS Temporal
FROM
[dbo].[Clientes] a
INNER JOIN
[dbo].[CuentasBancarias] b ON a.ClienteId = b.ClienteId
我試圖創建一個腳本,但我得到非常困惑與WHILE ...和我堵塞或卡住...
DECLARE @puntocliente BIGINT
DECLARE @Cuentas BIGINT
SET @puntocliente = 1
SET @Cuentas = 0
WHILE @puntocliente <= (SELECT DISTINCT(ClienteId) FROM [dbo].[CuentasBancarias] WHERE ClienteId = @puntocliente)
BEGIN
SET @puntocliente = @puntocliente + 1
WHILE @puntocliente <= @puntocliente
BEGIN
SELECT DISTINCT(ClienteId) FROM [dbo].[CuentasBancarias] WHERE ClienteId = @puntocliente
END
SELECT @puntocliente
SELECT *
FROM [dbo].[Clientes] a
INNER JOIN [dbo].[CuentasBancarias] b ON a.ClienteId = b.ClienteId
WHERE a.ClienteId = @puntocliente
END
我會upvote這是爲了兌現你的支持,擺脫循環:-) – Shnugo