1000 primeiros Números Primos com o SQL Server
Eu tenho o programa para o Primeiro que dá apenas 2 como saída. Ele deveria me dar tudo baseado no programa em java que eu escrevi.
Aqui está SQL que eu criei para números Primos. É no SQL Server. Eu quero imprimir 1000 primeiros números Primos. Pode você por favor, deixe-me saber o problema nesse código?
DECLARE @i INT = 1
DECLARE @j INT = 2
DECLARE @COUNT INT
BEGIN
WHILE @j <= 10
BEGIN
SET @COUNT = 0
WHILE @i <= @j
BEGIN
BEGIN
IF((@j %% @i) = 0)
SET @COUNT += 1
END
SET @i += 1
END
BEGIN
IF (@COUNT = 2)
PRINT @j
END
SET @j += 1
END
END
;
Obrigado !!!

Use condicional de agregação:
SELECT
ML.MemberID
,ML.effective_date
,CL.CaseID
,CL.CaseName
,CL.StartDate AS CaseCreatedDate
,CONCAT(U.firstname,' ', U.lastname) AS PrimaryCaseOwner
MIN(CONCAT(U2.firstname,' ', U2.lastname)) AS SecondaryCaseOwner1,
CASE
WHEN MIN(U2.[user_id]) != MAX(U2.[user_id])
THEN MAX(CONCAT(U2.firstname,' ', U2.lastname))
END AS SecondaryCaseOwner2
FROM #MemberList ML
INNER JOIN vw_CaseList CL
ON ML.member_id = CL.member_id
AND CL.StartDate < GETDATE()
AND (CL.EndDate IS NULL OR CL.EndDate > GETDATE() )
INNER JOIN Users U ON CL.primary_owner_id = U.[user_id]
LEFT JOIN Cases_SecondaryOwners S ON CL.case_id = S.case_id
LEFT JOIN Users U2 ON S.[user_id] = U2.[user_id]
WHERE MemberID in = 16468
GROUP BY
ML.MemberID
,ML.effective_date
,CL.CaseID
,CL.CaseName
,CL.StartDate AS CaseCreatedDate
,U.firstname
,U.lastname
ORDER BY MemberName, CaseCreatedDate
Notas:
esta consulta faz sentido apenas de há mais de 2 secundário usuários; de outro, você vai ter o primeiro e último nomes de usuários, ordenados por ordem alfabética dos nomes completos de
Eu mudei a condição de
WHERE
cláusula deMemberID in IN (16468)
paraMemberID in = 16468
;IN
é melhor utilizado quando há vários elementos na lista.
Eu tenho exatamente o mesmo problema. @Marcos, você poderia elaborar um pouco mais de como você resolveu o problema.
Oi por Favor, tente o código abaixo,
public static void main(String[] args) {
String str = "246";
System.out.println("All substring of abbc are:");
for (int i = 0; i < str.length(); i++) {
for (int j = i+1; j <= str.length(); j++) {
if((Integer.valueOf(str.substring(i,j)) <26))
System.out.println(str.substring(i,j));
}
}
}
Perguntas semelhantes
Veja mais perguntas por marcas sql-server