mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
Performance Verbesserung beim Suchen von Projektbetreuern/Prüfern
This commit is contained in:
+12
-4
@@ -54,21 +54,29 @@ echo '
|
|||||||
|
|
||||||
<RDF:Seq RDF:about="'.$rdf_url.'/liste">
|
<RDF:Seq RDF:about="'.$rdf_url.'/liste">
|
||||||
';
|
';
|
||||||
|
$db = new basis_db();
|
||||||
//$filter = utf8_encode($filter);
|
//$filter = utf8_encode($filter);
|
||||||
$qry = "SELECT
|
$qry = "SELECT
|
||||||
distinct person_id, vorname, nachname, titelpre, titelpost,
|
distinct person_id, vorname, nachname, titelpre, titelpost,
|
||||||
CASE
|
CASE
|
||||||
WHEN (SELECT count(*) FROM public.tbl_benutzer JOIN public.tbl_mitarbeiter ON(uid=mitarbeiter_uid) WHERE person_id=tbl_person.person_id)>0 THEN 'Mitarbeiter'
|
WHEN EXISTS (SELECT 1 FROM public.tbl_benutzer JOIN public.tbl_mitarbeiter ON(uid=mitarbeiter_uid) WHERE person_id=tbl_person.person_id) THEN 'Mitarbeiter'
|
||||||
WHEN (SELECT count(*) FROM public.tbl_benutzer JOIN public.tbl_student ON(uid=student_uid) WHERE person_id=tbl_person.person_id)>0 THEN 'Student'
|
WHEN EXISTS (SELECT 1 FROM public.tbl_benutzer JOIN public.tbl_student ON(uid=student_uid) WHERE person_id=tbl_person.person_id) THEN 'Student'
|
||||||
ELSE 'Person'
|
ELSE 'Person'
|
||||||
END as status
|
END as status
|
||||||
FROM public.tbl_person WHERE nachname ~* '".addslashes($filter).".*' ORDER BY nachname, vorname, titelpre, titelpost";
|
FROM
|
||||||
|
public.tbl_person
|
||||||
|
WHERE
|
||||||
|
lower(nachname) like '%".$db->db_escape(mb_strtolower($filter))."%'
|
||||||
|
OR
|
||||||
|
lower(nachname || ' ' || vorname) like '%".$db->db_escape(mb_strtolower($filter))."%'
|
||||||
|
OR
|
||||||
|
lower(vorname || ' ' || nachname) like '%".$db->db_escape(mb_strtolower($filter))."%'
|
||||||
|
ORDER BY nachname, vorname, titelpre, titelpost";
|
||||||
|
|
||||||
if(isset($_GET['nurmittitel']))
|
if(isset($_GET['nurmittitel']))
|
||||||
{
|
{
|
||||||
$qry.=" AND (titelpre<>'' OR titelpost<>'')";
|
$qry.=" AND (titelpre<>'' OR titelpost<>'')";
|
||||||
}
|
}
|
||||||
$db = new basis_db();
|
|
||||||
|
|
||||||
if($result = $db->db_query($qry))
|
if($result = $db->db_query($qry))
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user