/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Kan man det?
Fra : Kurt G


Dato : 19-03-11 17:33

Jeg har to tabeller i MySql, "Artikler" og "Stikord".

"Artikler" har felterne:
Aar, FraSide, TilSide, Forfatter, Titel
Disse felter kan indeholde (felter adskilt med |):
1995|5|14|Lindholt, Sigurd|Foreningslivet har givet mig alt
1995|15|28|Tang, Ragna|Foreningsliv i lyst og nød
1995|29|38|Kristensen, Georg|Rige år i FDF og DSU
1995|39|56|Ravn, Anna og Ravn, Kr.|Løvstrupgaard - en gård og et børnehjem I
Vestjylland
1995|57|96|Pedersen, Ejner G.|Vadesteder - broer - færgefart - over åerne i
Vestjylland (2. del)
1995|97|116|Langer, Anders Vrist|Falkenberg - strandejer af Ryssenstens
nordre forstrand ("Èn krage hugger ikke øjnene ud på den anden")

"Stikord" med felterne:
Stikord, Aar, Side, der kan indeholde (felter adskilt med |):
Sevel|1995|24, 26, 27, 29, 34-36, 69

Når jeg nu søger på 'Sevel' i "Stikord", vil jeg gerne have svarene:
1995|15|28|Tang, Ragna|Foreningsliv i lyst og nød
1995|29|38|Kristensen, Georg|Rige år i FDF og DSU
1995|57|96|Pedersen, Ejner G.|Vadesteder - broer - færgefart - over åerne i
Vestjylland (2. del)

Altså skal alle de artikler ra 1995, der har sidetal, som falder indenfor
siderne nævnt i "Stikord", listes.

Kan det gøres med en enkelt sql-forespørgsel eller skal jeg ud fra svaret
fra "Stikord" lave nogle forespørgsler på de enkelte sidenumre (vha f.eks.
PHP)?

Jeg håber, at jeg har forklaret mig, så det kan forstås!

Mvh Kurt



 
 
Arne Vajhøj (20-03-2011)
Kommentar
Fra : Arne Vajhøj


Dato : 20-03-11 02:43

On 19-03-2011 12:33, Kurt G wrote:
> Jeg har to tabeller i MySql, "Artikler" og "Stikord".
>
> "Artikler" har felterne:
> Aar, FraSide, TilSide, Forfatter, Titel
> Disse felter kan indeholde (felter adskilt med |):
> 1995|5|14|Lindholt, Sigurd|Foreningslivet har givet mig alt
> 1995|15|28|Tang, Ragna|Foreningsliv i lyst og nød
> 1995|29|38|Kristensen, Georg|Rige år i FDF og DSU
> 1995|39|56|Ravn, Anna og Ravn, Kr.|Løvstrupgaard - en gård og et børnehjem I
> Vestjylland
> 1995|57|96|Pedersen, Ejner G.|Vadesteder - broer - færgefart - over åerne i
> Vestjylland (2. del)
> 1995|97|116|Langer, Anders Vrist|Falkenberg - strandejer af Ryssenstens
> nordre forstrand ("Èn krage hugger ikke øjnene ud på den anden")
>
> "Stikord" med felterne:
> Stikord, Aar, Side, der kan indeholde (felter adskilt med |):
> Sevel|1995|24, 26, 27, 29, 34-36, 69
>
> Når jeg nu søger på 'Sevel' i "Stikord", vil jeg gerne have svarene:
> 1995|15|28|Tang, Ragna|Foreningsliv i lyst og nød
> 1995|29|38|Kristensen, Georg|Rige år i FDF og DSU
> 1995|57|96|Pedersen, Ejner G.|Vadesteder - broer - færgefart - over åerne i
> Vestjylland (2. del)
>
> Altså skal alle de artikler ra 1995, der har sidetal, som falder indenfor
> siderne nævnt i "Stikord", listes.
>
> Kan det gøres med en enkelt sql-forespørgsel eller skal jeg ud fra svaret
> fra "Stikord" lave nogle forespørgsler på de enkelte sidenumre (vha f.eks.
> PHP)?
>
> Jeg håber, at jeg har forklaret mig, så det kan forstås!

1) Lav om på din data struktur, så hver række i stikord kun har en side.

2) Lav noget SQL a la:

SELECT artikler.*
FROM artikler,stikord
WHERE artikler.aar=stikord.aar AND artikler.fraside<=stikord.side AND
stikord.side<=artikler.tilside

Arne


Kurt G (20-03-2011)
Kommentar
Fra : Kurt G


Dato : 20-03-11 08:54

"Arne Vajhøj" <arne@vajhoej.dk> skrev i en meddelelse
news:4d855b9d$0$23761$14726298@news.sunsite.dk...
> On 19-03-2011 12:33, Kurt G wrote:
>> Jeg har to tabeller i MySql, "Artikler" og "Stikord".
>>
>> "Artikler" har felterne:
>> Aar, FraSide, TilSide, Forfatter, Titel
>> Disse felter kan indeholde (felter adskilt med |):
>> 1995|5|14|Lindholt, Sigurd|Foreningslivet har givet mig alt
>> 1995|15|28|Tang, Ragna|Foreningsliv i lyst og nød
>> 1995|29|38|Kristensen, Georg|Rige år i FDF og DSU
>> 1995|39|56|Ravn, Anna og Ravn, Kr.|Løvstrupgaard - en gård og et
>> børnehjem I
>> Vestjylland
>> 1995|57|96|Pedersen, Ejner G.|Vadesteder - broer - færgefart - over åerne
>> i
>> Vestjylland (2. del)
>> 1995|97|116|Langer, Anders Vrist|Falkenberg - strandejer af Ryssenstens
>> nordre forstrand ("Èn krage hugger ikke øjnene ud på den anden")
>>
>> "Stikord" med felterne:
>> Stikord, Aar, Side, der kan indeholde (felter adskilt med |):
>> Sevel|1995|24, 26, 27, 29, 34-36, 69
>>
>> Når jeg nu søger på 'Sevel' i "Stikord", vil jeg gerne have svarene:
>> 1995|15|28|Tang, Ragna|Foreningsliv i lyst og nød
>> 1995|29|38|Kristensen, Georg|Rige år i FDF og DSU
>> 1995|57|96|Pedersen, Ejner G.|Vadesteder - broer - færgefart - over åerne
>> i
>> Vestjylland (2. del)
>>
>> Altså skal alle de artikler ra 1995, der har sidetal, som falder indenfor
>> siderne nævnt i "Stikord", listes.
>>
>> Kan det gøres med en enkelt sql-forespørgsel eller skal jeg ud fra svaret
>> fra "Stikord" lave nogle forespørgsler på de enkelte sidenumre (vha
>> f.eks.
>> PHP)?
>>
>> Jeg håber, at jeg har forklaret mig, så det kan forstås!
>
> 1) Lav om på din data struktur, så hver række i stikord kun har en side.
>
> 2) Lav noget SQL a la:
>
> SELECT artikler.*
> FROM artikler,stikord
> WHERE artikler.aar=stikord.aar AND artikler.fraside<=stikord.side AND
> stikord.side<=artikler.tilside
>
> Arne
>
Tak for dit svar!
Det anede mig nok, at det er nødvendigt at dele det op på mange sider!
Det er noget af et arbejde, der er i forvejen 11.000 linier med stikord, men
det kan nok klares med et lile delphi-program!

Mvh Kurt



Arne Vajhøj (22-03-2011)
Kommentar
Fra : Arne Vajhøj


Dato : 22-03-11 22:01

On 20-03-2011 03:53, Kurt G wrote:
> "Arne Vajhøj"<arne@vajhoej.dk> skrev i en meddelelse
> news:4d855b9d$0$23761$14726298@news.sunsite.dk...
>> On 19-03-2011 12:33, Kurt G wrote:
>>> Jeg har to tabeller i MySql, "Artikler" og "Stikord".
>>>
>>> "Artikler" har felterne:
>>> Aar, FraSide, TilSide, Forfatter, Titel
>>> Disse felter kan indeholde (felter adskilt med |):
>>> 1995|5|14|Lindholt, Sigurd|Foreningslivet har givet mig alt
>>> 1995|15|28|Tang, Ragna|Foreningsliv i lyst og nød
>>> 1995|29|38|Kristensen, Georg|Rige år i FDF og DSU
>>> 1995|39|56|Ravn, Anna og Ravn, Kr.|Løvstrupgaard - en gård og et
>>> børnehjem I
>>> Vestjylland
>>> 1995|57|96|Pedersen, Ejner G.|Vadesteder - broer - færgefart - over åerne
>>> i
>>> Vestjylland (2. del)
>>> 1995|97|116|Langer, Anders Vrist|Falkenberg - strandejer af Ryssenstens
>>> nordre forstrand ("Èn krage hugger ikke øjnene ud på den anden")
>>>
>>> "Stikord" med felterne:
>>> Stikord, Aar, Side, der kan indeholde (felter adskilt med |):
>>> Sevel|1995|24, 26, 27, 29, 34-36, 69
>>>
>>> Når jeg nu søger på 'Sevel' i "Stikord", vil jeg gerne have svarene:
>>> 1995|15|28|Tang, Ragna|Foreningsliv i lyst og nød
>>> 1995|29|38|Kristensen, Georg|Rige år i FDF og DSU
>>> 1995|57|96|Pedersen, Ejner G.|Vadesteder - broer - færgefart - over åerne
>>> i
>>> Vestjylland (2. del)
>>>
>>> Altså skal alle de artikler ra 1995, der har sidetal, som falder indenfor
>>> siderne nævnt i "Stikord", listes.
>>>
>>> Kan det gøres med en enkelt sql-forespørgsel eller skal jeg ud fra svaret
>>> fra "Stikord" lave nogle forespørgsler på de enkelte sidenumre (vha
>>> f.eks.
>>> PHP)?
>>>
>>> Jeg håber, at jeg har forklaret mig, så det kan forstås!
>>
>> 1) Lav om på din data struktur, så hver række i stikord kun har en side.
>>
>> 2) Lav noget SQL a la:
>>
>> SELECT artikler.*
>> FROM artikler,stikord
>> WHERE artikler.aar=stikord.aar AND artikler.fraside<=stikord.side AND
>> stikord.side<=artikler.tilside

> Det anede mig nok, at det er nødvendigt at dele det op på mange sider!
> Det er noget af et arbejde, der er i forvejen 11.000 linier med stikord, men
> det kan nok klares med et lile delphi-program!

Det bør være trivielt i ethvert programmerings sprog.

Arne


Søg
Reklame
Statistik
Spørgsmål : 177415
Tips : 31962
Nyheder : 719565
Indlæg : 6407849
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste