Diskuze: Jak vybrat uživatele, kteří nejsou moji přátelé?
V předchozím kvízu, Online test znalostí SQL a databází, jsme si ověřili nabyté zkušenosti z kurzu.


Zobrazeno 12 zpráv z 12.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Online test znalostí SQL a databází, jsme si ověřili nabyté zkušenosti z kurzu.


chápu dobře, že chceš uživatele, na které nemáš přímou vazbu?
SELECT * FROM users u
LEFT JOIN friends f_to ON u.ID = f_to.RequestIDTo
LEFT JOIN friends f_from ON u.ID = f_from.RequestIDFrom
WHERE u.ID != 1
AND f_to.RequestIDFrom != 1
AND f_from.RequestIDTo != 1
AND f_to.Accept = true
AND f_from.Accept = true
GROUP BY u.ID
je to trochu neohrabané, ale mohlo by to fungovat
Chci uživatele, ke kterému nemám žádnou vazbu, ale i tak díky za snahu

Ale i to co jsi udělal se dá použít, jen nesmí být záznam můj přítel, což se mi u nějakých záznamů stalo.
takže uživatelé, které to vyplivne, nemáš být ty a tvoji přímí přátelé? přátelé jejich přátel to mohou být, nebo to mají být uživatelé, na které nemáš vůbec žádnou vazbu?
Uživatelé, které to vyplivne nemám být já ani moji přímí přátelé,
ale přátelé jejich přátel to být mohou, nebo to mají být tedy
uživatelé na které nemám vůbec žádnou vazbu. Takto 
pokud ty jsi 1 a jsi přítel 2 a 2 je přítel 3, ale 3 není přítel 1,
tak ty nemáš přímou vazbu na 3, ale nepřímou. Pokud by tu ještě bylo id
4, které není přítel s nikým, tak s ním nemáš žádnou vazbu.
tak jsem to myslel 
pokud ty jsi 1 a jsi přítel 2 a 2 je přítel 3, ale 3 není přítel 1,
tak ty nemáš přímou vazbu na 3, ale nepřímou. Pokud by tu ještě bylo id
4, které není přítel s nikým, tak s ním nemáš žádnou vazbu.
tak jsem to myslel 
Ano, ale je možnost, že se již kamarádím s ID 3, ale když se s ním
kamarádím, tak ho již nechci vypisovat, ale jinak takhle 
Tak dobrý, nakonec jsem ještě s pomocí stackoverflow vymyslel to co jsem
potřeboval, dyžtak kód házím sem, ale i tak, díky za snahu 
SELECT * FROM users u WHERE
u.ID NOT IN (SELECT RequestIDTo FROM friends where RequestIDFrom=1 OR RequestIDTo = 1) AND
u.ID NOT IN (SELECT RequestIDFrom FROM friends where RequestIDFrom=1 OR RequestIDTo = 1)
A nebylo by jednodussi pouzit tam union? Jako, pro rychlost zpracovani.
id NOT IN (
SELECT ...
UNION
SELECT ...
)
To zadani mi neni moc jasne.
Díky za radu, taky bych vám oboum rád nějak poděkoval, chtělo by to asi
něco jako víc řešení, tady na itnetworku 
Zobrazeno 12 zpráv z 12.