- Apple iPhone 17 - alap
- iPhone topik
- Így teljesít a Nubia Z80 Ultrában az új Snapdragon
- Android szakmai topik
- Itt a Xiaomi Android 16-os frissítési ütemterve a kompatibilis készülékekre
- Telekom mobilszolgáltatások
- Yettel topik
- Magisk
- Vivo X200 Pro - a kétszázát!
- Samsung Galaxy Z Fold6 - ugyanaz, sarkosan fogalmazva
Új hozzászólás Aktív témák
-
Speeedfire
félisten
"Na de nem pont az a lényege az ORM használatának, hogy előredefiniált táblarelációk vannak az idegen kulcsokon keresztül? Máskülönben hogyan határozódik meg a reláció?"
De pont az a lényege, megmondod a model relációban, hogyan kapcsolódik össze a 2 model (tábla) és az alapján állítja össze az eredményhalmazt neked.Ha használ idegen kucsot akkor gyorsabb, nem tudom mysql alatt van-e végrehajtási terv, de ott észre lehet venni, hogy hash join alapján a select cost-ja nagyon kicsi lesz. Míg reláció nélkül lassabb a select.
A legjobban úgy tudod ezt kideríteni, hogy megnézed a framework, hogyan használja fel ezeket a relációkat, ha bemegy a db-be és bekérdezi a constraint-eket, akkor bukod, ha nem kérdezi meg, csak használja, amit a user megadott neki akkor nem.
-
-
_ak_
addikt
Azt hiszem sikerült az eredeti elképzelésem.
'whereHas' kellett neki:
$dogs = Dog::where('gender', '=', "$search")
->orWhereHas('dogBreed', function ($query) use ($search)
{
$query->where('dog_breed', 'LIKE', "%$search%");
})
->orWhereHas('county', function ($query) use ($search)
{
$query->where('county', 'LIKE', "%$search%");
})
->orWhereHas('settlement', function ($query) use ($search)
{
$query->where('settlement', 'LIKE', "%$search%");
})
->get();Nem hittem volna, hogy ennyit fogok elidőzni már az elején.
-
Speeedfire
félisten
A kutya táblához is lehet kötni a usereket, attól függ mi a cél. A kutya tábla eredményhalmaza, vagy a users tábla.
A with szerintem biztos használható több táblára is. Azt már a model reláció résznél kell megadni, yii-ben ez a through kulcsszóval megy, laravel-re is biztos van hasonló.
Szerintem a Laraveles Eloquent az össze relációt felhozza neked.
-
Speeedfire
félisten
Nem ismerem a laravel-t, de a with opció mondja meg (legalábbis yii-ben így van), hogy mihez legyen kapcsolva és a model-ben írod le a kapcsolatot (inner, left, right stb.).
De egy egyszerű példa sql-ben.
table_a :
id : number
data: varchar2
table_b:
table_a_id : number
data: varchar2
select a.*
from table_a a
left join table_b b
on a.id = b.table_a_id
where a.data like '%valami%' or b.data like '%valami%'Összekötöd az a táblát a b táblával, ahol az a.id értéke megegyezik a b.table_a_id értékével. A feltétel részben pedig az a.data és a b.data mezőkre írsz like-ot. Az eredményhalmazban pedig kilistázza az összeset az a táblából.
Kereshetsz külön is, de akkor kell egy union all.
Új hozzászólás Aktív témák
- Apple iPhone 17 - alap
- One otthoni szolgáltatások (TV, internet, telefon)
- Azonnali VGA-s kérdések órája
- iPhone topik
- Energiaital topic
- Windows 11
- Gumi és felni topik
- AMD Navi Radeon™ RX 9xxx sorozat
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- Így teljesít a Nubia Z80 Ultrában az új Snapdragon
- További aktív témák...
- Apple iPhone 15 Pro 256GB, Kártyafüggetlen, 1 Év Garanciával
- Apple Watch Ultra GPS + Cellular 49mm, Újszerű, 1 Év Garanciával
- Samsung Galaxy S23 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- iBasso DX180 2025 DAP fekete, 1 hónapos, sok Muzix garanciával eladó
- Új iPad Mini 6 Gen. 256GB Wi-fi Starlight 3év garancia!
- Azonnali készpénzes Intel i5 i7 i9 8xxx 9xxx processzor felvásárlás személyesen / csomagküldés
- Eladó 2db Nokia steel hr hibrid okos óra dobozával
- LG SN4 soundbar hangprojektor 6 hó garancia, számlával!
- GYÖNYÖRŰ iPhone 15 Plus 128GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS3353
- DeepCool CC560 Black V2 garis+ ajándék hozzá Deepcool Mystique 240 vihütő
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest