|
| 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
| |
|
|