Report Svatby sourozenců mezi rodinami

Tipy a návody pro tvorbu vlastních sestav a výstupů z TNG.
Falt
Příspěvky: 299
Registrován: 30 srp 2013 23:48
Kontaktovat uživatele:

Report Svatby sourozenců mezi rodinami

Příspěvekod Falt » 24 lis 2017 23:25

Sourozenci z jedné rodiny, kteří kteří si vzali sourozence z jiné rodiny. Soudím, že je to atraktivní report, který potěší. Výsledek vypadá asi takto:

Brothers_Sisters.gif
Report Sourozenci z jedné rodiny, kteří kteří si vzali sourozence z jiné rodiny
Brothers_Sisters.gif (11.03 KiB) Zobrazeno 1211 x

Pouze doporučuji pohrát si s počeštěním názvů sloupců. SQL kód je následující:
SELECT
p1.gedcom
,CONCAT('<a href = \"getperson.php?personID=', p1.personID, '&tree=', p1.gedcom, '\">', p1.personID, '</a>') AS HusbandID
,CONCAT(UPPER(p1.lastname), ', ', p1.firstname) AS Husband_Name
,f1.marrdate
,CONCAT('<a href = \"getperson.php?personID=', p2.personID, '&tree=', p2.gedcom, '\">', p2.personID, '</a>') AS WifeID
,CONCAT(UPPER(p2.lastname), ', ', p2.firstname) AS Wife_Name
FROM
tng_families f1
INNER JOIN
tng_people p1
ON
f1.gedcom = p1.gedcom
AND
f1.husband = p1.personID
INNER JOIN
tng_people p2
ON
f1.gedcom = p2.gedcom
AND
f1.wife = p2.personID
WHERE
p1.famc <> ""
AND
p2.famc <> ""
AND
(p1.gedcom, CONCAT(CASE WHEN p1.famc < p2.famc THEN p1.famc ELSE p2.famc END, CASE WHEN p1.famc > p2.famc THEN p1.famc ELSE p2.famc END)) IN
(SELECT
q2.gedcom
,CONCAT(q2.family1, q2.family2) AS Parents
FROM
(SELECT
f1.gedcom
,CASE WHEN p1.famc < p2.famc THEN p1.famc ELSE p2.famc END AS Family1
,CASE WHEN p1.famc > p2.famc THEN p1.famc ELSE p2.famc END AS Family2
, COUNT(*) AS Frequency
FROM
tng_families f1
INNER JOIN
tng_people p1
ON
f1.gedcom = p1.gedcom
AND
f1.husband = p1.personID
INNER JOIN
tng_people p2
ON
f1.gedcom = p2.gedcom
AND
f1.wife = p2.personID
WHERE
p1.famc <> ""
AND
p2.famc <> ""
GROUP BY
Family1
,Family2
HAVING
Frequency > 1) AS q2)
ORDER BY
p1.gedcom
,CASE WHEN p1.famc < p2.famc THEN p1.famc ELSE p2.famc END
,CASE WHEN p1.famc > p2.famc THEN p1.famc ELSE p2.famc END
,f1.marrdatetr

:geek:

Zpět na “Reporty”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 1 host