Chyba już to poruszałem:
DROP TABLE IF EXISTS cash; CREATE TABLE cash ( id int(11) NOT NULL auto_increment, time int(11) NOT NULL default '0', adminid int(11) NOT NULL default '0', type int(11) NOT NULL default '0', value double NOT NULL default '0', ^^^^^^^^^^^^^^^^
Jeśli ktoś nie wierzy że takie definiowanie finansów ssie to niech da
-> SELECT SUM(value) from cash; -> update cash set value=ROUND(value,2); -> SELECT SUM(value) from cash;
Dodatkowo sumowanie w perlu gdy wpisów jest 1000 per user potrafi robić różne psikusy typu 1/1000000 grosza.
W starym i jarym lmsie działą (wersja mysqla, pgsqlowcy mają typ wybiitnie do walut):
ALTER TABLE cash MODIFY value DECIMAL(9,2); ALTER TABLE tariffs MODIFY value DECIMAL(9,2);
Dodatkowo proponowałbym:
ALTER TABLE users ADD index i_name (name); ALTER TABLE users ADD index i_lastname (lastname); ALTER TABLE users ADD index i_address (address); ALTER TABLE users ADD index i_city (city);
A pola status z users i type z cash zrobić typem jednobajtowym, speed-up jest wyczuwalny na testowych duuuużych bazach.
kd.
uczestnicy (1)
-
hunter