select från många tabeller

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Söderlund
    Medlem
    • 2003-07-28
    • 788

    #1

    select från många tabeller

    Vill köra en select på många tabeller typ,
    Code:
    select nisse from *
    är det möjligt att få till det på nått sätt eller måste alla tabellnamn skrivas?
  • nitro2k01
    Forumvärd
    • 2003-08-26
    • 7630

    #2
    Du får köra en union.

    [kod]select nisse from pelle union
    select nisse from johanna union
    select nisse from ahmed[/kod]
    Men jag frågar mig om du eventuellt inte har fel struktur på databasen om du behöver göra en sådan fråga.
    Gameboy Genius - Foto: Gatukonst och elektronikporr
    Internklippning:
    1) Snaggning av fångar.
    2) Klippning frisörer emellan.

    Comment

    • Söderlund
      Medlem
      • 2003-07-28
      • 788

      #3
      Grejen är att det är inte jag som gjort databasen och jag skulle behöva leta efter viss information som finns/kan finnas i en eller flera tabeller och vi pratar om många tabeller.

      Comment

      • nitro2k01
        Forumvärd
        • 2003-08-26
        • 7630

        #4
        Vilken databasmotor?
        Gameboy Genius - Foto: Gatukonst och elektronikporr
        Internklippning:
        1) Snaggning av fångar.
        2) Klippning frisörer emellan.

        Comment

        • Söderlund
          Medlem
          • 2003-07-28
          • 788

          #5
          MSSQL Server

          Comment

          • aasah
            Medlem
            • 2003-03-16
            • 3451

            #6
            Vilken version av MSSQL Server gäller det?

            Om det är 2005 eller upp har du utökade möjligheter att göra sökningen mha systemtabeller. Vill du alltså hitta alla tabeller som har en kolumn som heter nisse eller vill du leta efter mycket specifik info i alla på ren svenska "text"-kolumner, dvs char, nchar, varchar, nvarchar, text, ntext?

            Beskriv mer exakt vad du VET om de kolumner du letar efter (tex vilka typer/namn/längd de kan ha).

            Det GÅR att skräddarsy en fråga som hittar alla tabeller som innehåller en viss kolumn genom att ställa frågor mot systemtabeller eller för den delen generera en SQL-fråga som letar I dessa kolumner efter ett visst värde men jag behöver mer info för att kunna ge bättre hjälp.

            Comment

            • civilpolisen
              Medlem
              • 2009-12-10
              • 816

              #7
              Om jag inte har fel, och det kan jag mycket väl ha, så vill jag minnas att en av de saker som skiljer MS SQL Server och Access är att i SQL Server kan man med kod ta reda på vad det olika tabellerna heter.

              Det är därför man är (har varit??) hänvisad till Access som hanterare av databasen. (Gränssnittet mot DB.)

              I så fall torde du med relativt enkla medel kunna göra en loop och fråga vad varje tabell heter och sen leta efter ditt värde inne i själva loopen.

              Skulle det hjälpa dig!?
              Kanske lite omständigt, men det skulle fungera... I alla fall i teorin!! :-)
              - Vad hette La Liga då det begav sig?
              - Då Liga.

              Comment

              • aasah
                Medlem
                • 2003-03-16
                • 3451

                #8
                Originally posted by civilpolisen
                Om jag inte har fel, och det kan jag mycket väl ha, så vill jag minnas att en av de saker som skiljer MS SQL Server och Access är att i SQL Server kan man med kod ta reda på vad det olika tabellerna heter.

                Det är därför man är (har varit??) hänvisad till Access som hanterare av databasen. (Gränssnittet mot DB.)
                Va? Hur menar du nu? Jag kan inget om Access, men man använder förvisso inte Access för att hantera vare sig SQL Server eller MySQL i vart fall.

                Men jo, man kan via systemtabeller loopa igenom alla tabeller och kolumner om man vet vad man gör. Dock är det bra att begränsa den sökningen så mycket som möjligt om ens databas är hyggligt stor eftersom man annars får jättemånga träffar. Därför är det viktigt att veta version på MS SQL samt så mycket som möjligt om de kolumner och tabeller som man letar efter.

                Comment

                • @nders
                  Moderator
                  Marsvin
                  • 2000-06-30
                  • 26914

                  #9
                  [citat=aasah]s, men man använder förvisso inte Access för att hantera vare sig SQL Server eller MySQL i vart fall.[/citat]Det beror på vem du åsyftar med man. Du kanske inte gör det - men det går att använda Access som front end för ganska mycket - bland annat SQL Server och MySQL.

                  Och är man van vid det gränssnittet så kan jag absolut tänka mig att man vill använda Access för att hantera andra sorters databaser också.

                  mvh
                  @aviddevguy

                  Comment

                  • civilpolisen
                    Medlem
                    • 2009-12-10
                    • 816

                    #10
                    Hur menar du nu? Jag kan inget om Access, men man använder förvisso inte Access för att hantera vare sig SQL Server eller MySQL i vart fall.
                    Ursäkta mig. Jag var lite otydlig. I SQL Server kan du med kod göra ett eget gränssnitt mot databasen, här avses SQL Server. Alltså prata med databasen...

                    Du kan inte med kod hantera gränssnittet i Access, här avses Access databas gränssnitt, gränssnittet mot databasen. (Alltså Access.)

                    ***
                    Med kod kan man göra mycket och därmed även lösa trådskaparens ursprungliga frågeställning, dvs "SELECT [nisse] FROM[*]". (Alla tabeller.)

                    Men som sagt, kanske fungerar det som allra bäst i teorin!! :-)

                    Are you with??
                    - Vad hette La Liga då det begav sig?
                    - Då Liga.

                    Comment

                    • Söderlund
                      Medlem
                      • 2003-07-28
                      • 788

                      #11
                      2005

                      Comment

                      • Söderlund
                        Medlem
                        • 2003-07-28
                        • 788

                        #12
                        Originally posted by aasah
                        ...Beskriv mer exakt vad du VET om de kolumner du letar efter (tex vilka typer/namn/längd de kan ha).
                        ...
                        Det är över 400 tabeller så...jag vet inte jag...

                        Comment

                        • Söderlund
                          Medlem
                          • 2003-07-28
                          • 788

                          #13
                          Jag har data, låt oss säga att jag har ett telefonnummer och det telefonnummret kan vara i en eller flera tabeller.
                          Nu vill jag ta reda på i vilka tabeller det telefonnummret finns i.

                          /N

                          Comment

                          • aasah
                            Medlem
                            • 2003-03-16
                            • 3451

                            #14
                            Originally posted by Söderlund
                            Jag har data, låt oss säga att jag har ett telefonnummer och det telefonnummret kan vara i en eller flera tabeller.
                            Nu vill jag ta reda på i vilka tabeller det telefonnummret finns i.

                            /N
                            Med andra ord, du vill söka igenom 400 tabellers samtliga på ren svenska "text"-kolumner, dvs char, nchar, varchar, nvarchar, text, ntext efter var det på någon rad i den lagrade datan finns ett visst telefonnummer?

                            Dvs det är inte kolumnnamnet som är känt, utan data som finns på någon rad i någon av databasens alla kolumner?

                            (Detta till skillnad från ditt exempel ovan för en tabell: "SELECT nisse FROM MyTable" hittar alla rader i kolumnen som heter nisse i tabellen MyTable, inte alla rader i MyTable där någon kolumn innehåller värdet 'nisse'.)

                            Förekommer telefonnummret, om det finns, som hela värdet i en kolumn eller kan det vara en del av kolumnens värde? Alltså tex. säg att jag letar efter telefonnummer 040 - 323 34 45 (taget ur luften) letar du då efter kolumner som innehåller exakt värdet '040 - 323 34 45' eller kan det stå: "Kalles telefonnummer är 040 - 323 34 45, adressen är..."?

                            Och om det är ett telefonnummer så antar jag att du inte vet formatet som det skrevs in på en gång, dvs det kan stå:
                            040/323 34 45 eller +46403233445 eller 040 / 323 34 45 m.fl. andra möjligheter lika väl som just 040 - 323 34 45 och du vill hitta alla? Stämmer det?

                            --
                            @nders & civilpolisen - jag förstod civilpolisen från början som att han menade att ALLA måste använda ett Access-gränssnitt mot SQL server...

                            Comment

                            Working...