- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
function SortArray(&$array,$coll,$desc=false)
{
global $temp;
if(!function_exists('SorterUp')){
function SorterUp($x,$y)
{
global $temp;
if ($x[$temp] == $y[$temp]) return 0;
return ($x[$temp] < $y[$temp]) ? -1 : 1;
}
function SorterDown($x,$y)
{
global $temp;
if ($x[$temp] == $y[$temp]) return 0;
return ($x[$temp] > $y[$temp]) ? -1 : 1;
}
}
$temp = $coll;
if(!$desc){
usort($array,'SorterUp');
}else{
usort($array,'SorterDown');
}
unset($temp);
}
Продолжаю цикл "Из одной русской CMS". Этот код - PHP замена ORDER BY в мускуле.
istem 17.10.2010 11:44 # 0
Мартин 17.10.2010 12:17 # +1
Анонимус 17.10.2010 17:00 # 0
istem 17.10.2010 23:12 # 0
Мартин 18.10.2010 13:37 # 0
Lure Of Chaos 17.10.2010 13:31 # 0
Мартин 17.10.2010 14:50 # 0
Lure Of Chaos 17.10.2010 18:39 # 0
sectus 18.10.2010 04:24 # 0
Мартин 18.10.2010 13:40 # 0
asfalanaft 18.10.2010 11:12 # −3
Мартин 18.10.2010 13:39 # +3
asfalanaft 18.10.2010 14:14 # −4
asfalanaft 18.10.2010 18:58 # −2
Мартин 18.10.2010 19:37 # +1
asfalanaft 18.10.2010 21:52 # −2
Анонимус 19.10.2010 18:46 # +2
И спрошу "что в этом коде плохого если брать его вне возможностей современных языков?"
ORDER BY есть во ВСЕХ реляционных БД. В MySQL он ТОЧНО есть с 2001г (когда я впервые увидел мусю), и подозреваю что и до этого он там был.
Так что странный у Вас аргумент.
Давайте ще стандартную библиотеку си сами реализуем, HTTP сервер сами напишем итд
Мартин 19.10.2010 19:10 # +1
В этой системе есть и такой вариант БД велосипед. Не знаю, будет ли он интересен аудитории ГК...
asfalanaft 20.10.2010 20:11 # −1
bugmenot 21.10.2010 03:08 # 0
к реляционности это никак не относится
и вообще, напоминаю, это - MySQL, разработанный чоткими пацанами, которые о ссылочной целостности ничего не слышали, и в итоге поделка стала условно называться реляционной СУБД только после покупки Ораклом
а поддержка предиката order by это такая же базовая основа как и where, как уже упоминали - 92 год XX века н.э.
Анонимус 21.10.2010 03:17 # +1
А про пацанов -- согласен. С одной стороны они теряют простоту, ради которой делались, а с другой стороны до серьезных субд не дотягивают (достаточно плотно поработать с ms-sql например, что бы это понять) и получается ни то ни се.
как ооп в php:) не даром же есть абривиатура amp :)
но муська повсеместна, крос-платформенна и ее все более-ли-менее знают, и потому я ее часто использую.
ЗЫ:
Хотя стоит отметить что внешние ключи все таки у них есть. И купил их не оракл, а сан, а уже сан потом оракл )
bugmenot 21.10.2010 03:46 # 0
re: покупка и внешние ключи - вот где-то в процессе этого купи-продая в дистрибуцию и попало InnoDB, ранее бывшее сторонним кодом. соответственно можно теперь гордо написать что реляционная СУБД, non penis canina. а вот почему так не сделали в версии скажем 3.х - тут уже фактор волосатости, точно также как и в чуднóм мире PHP/FI
Анонимус 21.10.2010 04:31 # 0
Почему не сделали -- понятно. Потому что "mysql это простая быстрая бд, а хочешь крутизны -- бери постгрю, которая всё на свете поддерживает уже цать лет" -- так тогда все говорили и думали.
Но потом муся почуяла денюшку, а что бы продаваться крупным корпорациям надо иметь красивые слова типа "поддержка тразакций".
При этом куча детских болезней в ней как была так и осталась
Oleg_quadro 18.10.2010 23:27 # 0
А код здесь похоже такой, что автор не знал, что ORDER BY может принимать номер столбца.