ansis Posted November 3, 2005 Report Share Posted November 3, 2005 Vajadzība sekojoša: Pierakstīt ciparus (teiksim, vērtējumus). Vēlāk ar tiem veikt darbības - summēt, vidējot, utt. Bet - reizēm cipars nav, resp. vērtējuma var nebūt (N/A). Tas ir cits gadījums, nekā "vērtējums=0". Jautājums - kā šo reģistrēt db? Kādu lauka tipu izvēlēties? Ja izvēlos teksta lauku, tad jāveic ifi un konversijas aprēķiniem. Ja izvēlos num, tad nevaru pierakstīt vērtību "n/a". Variants, kas pašam nāk prātā - kaut kādu skaitļa vērtību, piem "1000" uzskatīt par n/a, un pirms aritmētikas veikšanas pārbaudīt - JA (vērt=1000) TAD (vērt="n/a"). Bet tas šķiet diezgan kokaini. Varbūt ir labāki ieteikumi? Link to comment Share on other sites More sharing options...
rpr Posted November 3, 2005 Report Share Posted November 3, 2005 liec lauka tipu int(10) null tur kur ir n./a tur liec null veertiibu. insert into tabula (vertiba) values (null); Link to comment Share on other sites More sharing options...
MC_ Posted November 3, 2005 Report Share Posted November 3, 2005 Atstaaj to pashu integer, tikai atlkauj ka veertiiba var buut NULL CREATE TABLE atzimes( a_id INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT, a_atzime INT(2) NULL ) atieciigi php: $q = "SELECT * FROM atzimes ORDER BY a_atzime"; $res = mysql_query($q); while( $row = mysql_fetch_array($res, MYSQL_ASSOC)){ if( $row['a_atzime']==NULL){ $row['a_atzime'] = "N/A"; } echo "a_id={$a_id}, a_atzime={$a_atzime}<br />"; } Link to comment Share on other sites More sharing options...
Recommended Posts