| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Скорость сравнения строк |
| Автор: m31 18.2.2008, 22:25 |
| Есть база в ней есть таблица1 из которой я беру значение1. И есть таблица2 из которой я беру значение 2. Затем делаю сравнение этих двух значений через иф-елс if ($значение1==$значение2){ echo "$значение1"; } else { } но значений оочень много и это всё делается оочень долго. Кто может посоветовать быстрый способ провести сравнения и вывести все совподающие результаты? |
| Автор: GeneralElectric 18.2.2008, 22:34 |
| Сравнивать средствами БД, разумеется. Не нужно быть профи в программировании, чтобы догадаться. |
| Автор: m31 18.2.2008, 22:40 |
| а можешь пример привести, просто я не очень хорошо умею работать с базами :( и вот ещё, я вывожу список из базы и говорю ей чтобы она его отсортировала, но она не сортирует( $query3 = "SELECT * FROM $userstable3 ORDER BY Gorod" ; Gorod - на русском в базе, но сортировка не происходит( |
| Автор: GeneralElectric 18.2.2008, 22:45 |
| Тебе не кажется, что вопрос стоило бы задать попродробнее? Добавлено через 1 минуту и 25 секунд При сортировке совсем не сортирует, даже цифры, или сортирует, но криво? |
| Автор: m31 18.2.2008, 22:55 |
| Криво как-то сортирует. по сравнению, можешь привести пример сравнения значение1 и значение2 средствами базы(mysql) и если они одинаковые то вывод значения на экран. |
| Автор: m31 18.2.2008, 23:24 |
| WHERE field1=field2 а как такое на php реализовать??? у меня не выходит сравнение провести( |
| Автор: GeneralElectric 18.2.2008, 23:35 |
| Ты можешь человеческим языком описать свои таблицы, связи между ними ,содержащиеся данные и задачу, зачем понадобилось сравнение? или ты сам ничего этого не знаешь? |
| Автор: m31 18.2.2008, 23:49 |
| есть база base. в ней есть 2 таблицы goroda и ourgaroda. goroda содержит несколько полей id(просто номер), id_gorod(номер города, число), name_gorod(название города, имя на русском) ourgaroda содержит несколько полей id(просто номер), id_ourgorod(номер города, число), name_ourgorod(название города, имя на русском) в goroda содержиться полный список всех городов, а в ourgaroda содержит только список городов фирм с корорыми работаем. в goroda гораздо больше чем в ourgaroda городов, но в ourgaroda они могут повторяться. И так что нужно сделать. сравноть id_gorod и id_ourgorod, если они равны, то вывести название города(name_ourgorod), но тут нужно сделать так чтобы города не повторялись. если не совподают, то ничего не выводить. Вот приблизительно так. |
| Автор: GeneralElectric 18.2.2008, 23:54 |
| И зачем это нужно? |
| Автор: m31 18.2.2008, 23:55 |
| для сайта |
| Автор: GeneralElectric 19.2.2008, 00:16 |
| Очаровательный ответ. Вопросов болше не имею. |
| Автор: source777 19.2.2008, 00:22 | ||
Кстати приписывать имя таблицы к именам полей - это моветон, особенно в качестве суффикса... |
| Автор: A1ekcandr 19.2.2008, 09:36 |
| используй LEFT JOIN , может поможет инфа http://66.102.9.104/search?q=cache:uU3BcK6mUEUJ:www.javenue.info/post/20+inner+join+sql&hl=ru&ct=clnk&cd=1&gl=ru&lr=lang_ru |
| Автор: GeneralElectric 19.2.2008, 09:49 |
| A1ekcandr, ты уверен, что задачу надо решать именно в такой постановке? а именно шерстить большую базу для штатной работы сайта? |
| Автор: bars80080 19.2.2008, 11:16 | ||
Господи, да вы убили парня, неужели сложно вначале предложить решение по ситуации, а потом уже толкать нравоучения, типа: "вали отсюда и пока не исправишься не приходи"
хотя бы так |
| Автор: source777 19.2.2008, 22:39 | ||
|
| Автор: Aikus 20.2.2008, 08:37 | ||
Здесь тупое сравнение надо сделать
засовываешь эту строку в запрос и живешь нормально. БД учить надо... блин не успел =) |