Avatar billede doctorpurple Nybegynder
29. april 2002 - 13:16 Der er 5 kommentarer og
1 løsning

2 select sætninger

jeg har et spørgsmål til hvordan man f.eks skriver...
select xxx from xxx where xxx = x select yyy from yyy where yyy = y

håber i forstår mit spørgsmål
Avatar billede -mundi- Nybegynder
29. april 2002 - 13:20 #1
Du vil have to recordset retur, fra 1 query ?
Avatar billede -mundi- Nybegynder
29. april 2002 - 13:25 #2
Du kan lave det som en stored procedure i stil med det her

CREATE PROCEDURE usp_News_GetByKey_Related (@NewsId as smallint)
AS
Set NOCOUNT ON

--1 recordset

SELECT        
        b.nwsDate,
        b.nwsHeadline,
        b.nwsNews,
        b.nwsPathPic,
        b.nwsUrl,
        b.NewsStatusId
                 
FROM 
        dbo.A_News b
WHERE
        b.NewsId = @NewsId

-- 2 recordset

SELECT        
        b.NewsIdRelated,
        a.nwsHeadline,
        a.nwsDate
FROM 
        dbo.A_NewsRelateTo b
    INNER JOIN
              dbo.A_News a
    ON
        b.NewsIdRelated = a.NewsId
WHERE
        (b.NewsId = @NewsId)
ORDER BY
        b.nwlOrder
GO

og skifte til det næste recordset med

set rs=rs.nextrecordset
Avatar billede rou Nybegynder
29. april 2002 - 13:39 #3
Syntaxen for det du mangler er:

SELECT felt1, felt2, felt3 FROM tabel1 WHERE x1 = y1
UNION
SELECT felt1, felt2, felt3 FROM tabel2 WHERE x2 = y2

Der er det krav at felterne i query 2 skal match dem i query 1.
Avatar billede doctorpurple Nybegynder
29. april 2002 - 13:40 #4
det var ikk det jeg helt vill tror jeg .... jeg sidder og programmere i visuel basic med en adodc control der skal være en select sætning der ser sådan ud som denne... og det hele skal stå i et datagrid
select count(*) as KC2 from Slagtegang..slagterecord Where cen_nr = 2
select count(*) as KC4 from Slagtegang..slagterecord Where cen_nr = 4
select count(*) as KC6 from Slagtegang..slagtegang Where cen_nr = 6
select count(*) as KC8 from Slagtegang..slagtegang Where cen_nr = 8
select count(*) as KC_total from Slagtegang..slagtegang Where cen_nr = 2
Or cen_nr = 4 Or cen_nr = 6 Or cen_nr = 8 "
select count(*) as MK52 from Slagtegang..slagtegang Where cen_nr = 52
select count(*) as MK54 from Slagtegang..slagtegang Where cen_nr = 54
select count(*) as MK56 from Slagtegang..slagtegang Where cen_nr = 56
select count(*) as MK58 from Slagtegang..slagtegang Wherecen_nr = 58  select count(*) as MK_total from Slagtegang..slagtegang Where cen_nr = 52 Or cen_nr = 54 Or cen_nr = 56 Or cen_nr = 58 "
select count(*) as O from Slagtegang..slagtegang where cen_nr != 2 and cen_nr != 4 and cen_nr != 6 and cen_nr != 8 and cen_nr != 52 and cen_nr != 54 and cen_nr != 56 and cen_nr != 58 "
'ssql = ssql & " select count(*) as Total from Slagtegang..slagtegang where cen_nr = 2 or cen_nr = 4 or cen_nr = 6 or cen_nr = 8 or cen_nr = 52 Or cen_nr = 54 Or cen_nr = 56 Or cen_nr = 58 "
Avatar billede ocp Nybegynder
29. april 2002 - 15:26 #5
Sæt et select udenom og læg parenteser omkring dine select's og adskil dem med komma:

select
  (select count(*) as KC2 ... where cen_nr = 2),
  (select count(*) as KC2 ... where cen_nr = 4),
  ...

Det burde virke.
Avatar billede doctorpurple Nybegynder
29. april 2002 - 15:47 #6
takker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester