Jump to content
php.lv forumi

MySQL vaicājums


euphoric

Recommended Posts

SELECT table1.id FROM table1 LEFT JOIN table2 ON (table1.id = table2.pid AND table2.ip = '$user_ip') WHERE table2.pid IS NULL order by rand() limit 1

 

Un šis tiešām tev strādā? Jo pēc vaicājuma sanāk, ka tu gribi, lai table2.pid ir NULL, bet tajā pašā laikā atlasi table1.id = table2.pid un pieņemu, ka table1.id nekad nebūs tev NULL.

Link to comment
Share on other sites

Jā viss darbojas, atlasu tos kas ir vienādi ar manu IP no table2 tai skaitā ta ieraksta `pid` ir tāds pats kā table1 kādam no ierakstiem `id` un WHERE table2.pid IS NULL sanāk ka izvada nevis vienādos, bet visus tos kas nesakrīt ar table2 ierakstiem kur ir mana ip .

 

Nezinu vai saprati.. , bet nu rezultāts ir tāds kā bija nepieciešams :)

Link to comment
Share on other sites

Nezinu vai saprati..

es arī nesapratu, kā tas ir iespējams :D

imho, tas var strādāt tikai tad, ja tava ip ir NULL

 

bet nu rezultāts ir tāds kā bija nepieciešams :)

nju tad jau viss kārtībā! ;) Edited by 2easy
Link to comment
Share on other sites

Tā kā te dažiem šķiet nav īsti skaidrs, kas ir ārējie (outer) un iekšējie (inner) savienojumi un kāda ir atšķirība, starp, vai nosacījumus liek ON klauzā vai WHERE klauzā, tad iespējams ir vērts palasīt par to iekš Ārējais savienojums un jo sevišķi sadaļu "Atšķirība starp papildus nosacījumiem kombinēšanas nosacījumā un WHERE klauzā".

Man jau šķiet, ka ar tiem piemēriem vajadzētu pietikt ;)

 

Gints Plivna

http://datubazes.wordpress.com

Link to comment
Share on other sites

Man patīk šis resurss.

 

http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html

 

Edit: lol, pamanīju tur Ginta komentāru :D

Pamanīji gan ;) - BTW man šis resurss kā tāds patīk, tikai ka jau daži komentētāji rakstīja un pats džeks zemāk savā komentārā atzina šis attēlojums nav īpaši korekts, maigi izsakoties. Man universitātē mācīja, ka Venna diagrammas lieto kopu operāciju vizuālai attēlošanai un tas ko viņš tur reāli ir attēlojis patiesībā ir kopu šķēlums, apvienojums, vienkārši kopa A, kopu atņemšana un simetriskā atņemšana.

Ja gribi lasīt angliski :D , vari lasīt arī manējos

http://gplivna.eu/papers/sql_join_types.htm un http://gplivna.eu/papers/sql_set_operators.htm .

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...