devotionMedlem sedan jan. 20013 582 inlägg Hej,
Jag använde Access, för att göra en urvalsfråga mot en databas via ODBC...
När jag sedan visade den i SQL-läge, ser den ut så här:
SELECT Artikel.Artikelnr,
Artikel.Benämning AS Benämning 1
ArtikelText.[Text 1] AS Benämning 2,
Artikel.Enhet,
Artikel.Artikeltyp,
Artikel.[Tillv/köp-kod],
Artikel.[Kortnr statnr],
Artikel.[Antal per enhet (förp)],
Artikel.[Försäljn pris],
Artikel.[Leverantörens best nr],
Artikel.Lagersaldo,
Artikel.[Kod artikelkat] INTO [Artikelreg till UppdragNU]
FROM Artikel
INNER JOIN ArtikelText
ON Artikel.Artikelnr = ArtikelText.Artikelnr
WHERE (((Artikel.Artikeltyp) Is Null) AND ((Artikel.[Kod artikelkat])="21"))
OR (((Artikel.Artikeltyp) Is Null) AND ((Artikel.[Kod artikelkat])="22"))
OR (((Artikel.Artikeltyp) Is Null) AND ((Artikel.[Kod artikelkat])="28"))
OR (((Artikel.Artikeltyp) Is Null) AND ((Artikel.[Kod artikelkat])="47"))
OR (((Artikel.Artikeltyp) Is Null) AND ((Artikel.[Kod artikelkat])="68"))
OR (((Artikel.Artikeltyp) Is Null) AND ((Artikel.[Kod artikelkat])="87"))
OR (((Artikel.Artikeltyp) Is Null) AND ((Artikel.[Kod artikelkat])="90"));
Vilka parenteser kan jag ta bort... ??
Känns väldigt invecklad, samtidigt som jag blir osäker på vad jag kan ta bort...
Det är ingen vanlig MSSQL-databas jag kopplar mot, så jag vet inte om IN ( ) Fungerar...
Varför kontrolleras detta:
(Artikel.Artikeltyp) Is Null
På alla rader?
Mvh
Henrik
devotionMedlem sedan jan. 20013 582 inlägg Rensade lite, och detta måste väl vara samma som ovan?
SELECT Artikel.Artikelnr,
Artikel.Benämning AS Benämning 1
ArtikelText.[Text 1] AS Benämning 2,
Artikel.Enhet,
Artikel.Artikeltyp,
Artikel.[Tillv/köp-kod],
Artikel.[Kortnr statnr],
Artikel.[Antal per enhet (förp)],
Artikel.[Försäljn pris],
Artikel.[Leverantörens best nr],
Artikel.Lagersaldo,
Artikel.[Kod artikelkat] INTO [Artikelreg till UppdragNU]
FROM Artikel
INNER JOIN ArtikelText
ON Artikel.Artikelnr = ArtikelText.Artikelnr
WHERE (Artikel.Artikeltyp Is Null AND Artikel.[Kod artikelkat]="21")
OR (Artikel.Artikeltyp Is Null AND Artikel.[Kod artikelkat]="22")
OR (Artikel.Artikeltyp Is Null AND Artikel.[Kod artikelkat]="28")
OR (Artikel.Artikeltyp Is Null AND Artikel.[Kod artikelkat]="47")
OR (Artikel.Artikeltyp Is Null AND Artikel.[Kod artikelkat]="68")
OR (Artikel.Artikeltyp Is Null AND Artikel.[Kod artikelkat]="87")
OR (Artikel.Artikeltyp Is Null AND Artikel.[Kod artikelkat]="90");
Mvh
Henrik
:)
devotionMedlem sedan jan. 20013 582 inlägg Pillade lite till:
SELECT Artikel.Artikelnr,
Artikel.Benämning AS Benämning 1
ArtikelText.[Text 1] AS Benämning 2,
Artikel.Enhet,
Artikel.Artikeltyp,
Artikel.[Tillv/köp-kod],
Artikel.[Kortnr statnr],
Artikel.[Antal per enhet (förp)],
Artikel.[Försäljn pris],
Artikel.[Leverantörens best nr],
Artikel.Lagersaldo,
Artikel.[Kod artikelkat] INTO [Artikelreg till UppdragNU]
FROM Artikel
INNER JOIN ArtikelText
ON Artikel.Artikelnr = ArtikelText.Artikelnr
WHERE Artikel.Artikeltyp Is Null
AND
(
Artikel.[Kod artikelkat]="21"
OR Artikel.[Kod artikelkat]="22"
OR Artikel.[Kod artikelkat]="28"
OR Artikel.[Kod artikelkat]="47"
OR Artikel.[Kod artikelkat]="68"
OR Artikel.[Kod artikelkat]="87"
OR Artikel.[Kod artikelkat]="90"
)
Är detta samma?
Mvh
Henrik
:)
Fortfarande samma vad jag kan se. Den första rensningen var triviala saker. Tvåan var också korrekt som du tänker på vad som får frågan att bli sann, alltså att både ett av artikelkategorierna stämmer överens, och att artikeltypen är null. Koden ser nog ut så för att maskingenererad kod inte är till för att läsas av människor. :)