Jump to content
php.lv forumi

news ar mysql


hackerman

Recommended Posts

Man pašlaik tur galvenais kverijs ir ~ tāds: SELECT * FROM news GROUP by id LIMIT 0,10

 

Iesaku SELECT kverijos nekad nelietot zvaigznīti. Tā vietā labāk izmanto SELECT lauks1, lauks2 FROM table. (Tā varēsi norādīt tikai tos datus, kas pašreiz ir vajadzīgi.)

Link to comment
Share on other sites

Gaumes lieta, protams. (Par gaumi nestrīdas - vai nu ir, vai nav. :)

 

Un ja to 35 lauku tabulu joinosi ar 2 citām 55 lauku tabulām, un no joina vajadzīgi tikai 3-4 lauki - arī rakstīsi zvaigznīti?

Edited by black
Link to comment
Share on other sites

nenopietnās un pagaidu vietās zvaigzne ir ok.

kur kaut kas nopietnāks, un zini ka šitais būs uz ilgu laiku vajag rakstīt lauku nosaukumus. ja nu tiešām ir vienalga cik daudz liekos datus no db izvelk, tad vienalga rakstm nosaukumus tāpēc, lai vēlāk zinātu ko no šitā kverija dabū ārā. komentārus tač tāpat neraksti :p

Link to comment
Share on other sites

Vēl viens zvaigznītes mīnuss - lauki tiek atgriezti tādā secībā, kā ir definēti tabulā. (Tas ir, vai nu jāizmanto "mysql_fetch_assoc", vai arī jāparraksta laba tiesa koda gadījumā, ja mainās tabula un pa vidu tiek pielikts kāds lauks)

Link to comment
Share on other sites

Tieši tāpēc es praktiski vienmēr izmantoju asociatīvo masīvu priekš rezultseta. Šaubos vai fetch_row izmantošana strādā "tik" daudz ātrāk, lai būtu vērts riskēt rakstot kodu, kas slikti padodas apdeitošanai.

Link to comment
Share on other sites

  • 2 weeks later...
Vēl viens zvaigznītes mīnuss - lauki tiek atgriezti tādā secībā, kā ir definēti tabulā.
Ja atmiņa neviļ, tad lauki tabulā nav definēti nekādā secībā, tāpat kā nav noteikta rindu kārtība.
Link to comment
Share on other sites

Tas ir tikai tīri teorētiski no SQL teorijas - ka laukiem nav kārtības tabulā. Bet praktiski, visi man zināmie SQL serveri tos laukus glabā iekšēji tādā kārtībā, kā tu tos saliki definējot tabulu (ja nav veikti nekādi alter table). Tāpēc tie tiks atgriezti vienmēr fiksētā secībā, parasti, tādā pašā kā definējot tabulu. Līdzīga lieta ir arī ar ierakstiem tabulā.

Link to comment
Share on other sites

×
×
  • Create New...