Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (2) 1 [2]  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> фильтр данных бд, требуется отфильтровать данные по выбранной подк. и огранич.
Sergeiqwe93  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 35
Пользователь №: 38863
На форуме: 11 лет, 3 месяца, 14 дней
Карма:




последний запрос будет выводить организацию, если WHERE d.`id_elem` IN (1,2,3)
and a.`id_subcat` = 1
and d.value =1

но мне нужно, чтоб и для ид 1 и для 2, и для 3 условия выполнялось. и выводить только тогда, когда при всех трех and a.`id_subcat` = 1
and d.value =1
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 6466
Пользователь №: 35718
На форуме: 12 лет, 6 месяцев, 4 дня
Карма: 208




Sergeiqwe93, значение в одной ячейке поля не может быть одновременно равно 1,2 и 3. Этим трем значениям оно может быть одновременно не равно.
Вся проблема в том что у вас нет алгоритма решения вашей задачи, алгоритм - это последовательность действий и он в общем случае не завязан на какой-то конкретный язык программирования.
Возможно ваша проблема кроется в неправильной организации структуры БД. Разбираться в этом бесплатно нет ни времени ни желания. Вы же, например, не поедете к Сергеичу копать огород на даче ради того что бы просто размяться.


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Sergeiqwe93  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 35
Пользователь №: 38863
На форуме: 11 лет, 3 месяца, 14 дней
Карма:




мне кажется, что все вверху написано и есть что то похожее на алгоритм.
я уже не знаю, что еще написать, чтоб стало еще яснее... мне нужен совет что почитать. я просмотрел все операторы, но не нашел то что мне нужно. скажите что можно посмотреть, или что еще описать, чтоб было яснее?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 6466
Пользователь №: 35718
На форуме: 12 лет, 6 месяцев, 4 дня
Карма: 208




Sergeiqwe93, ну что я могу посоветовать? Только почитать хорошую книгу (хотя мне за это уже предъявляют претензии, мол слишком часто я даю такую рекомендацию, но мне по барабану, я заставлять никого не собираюсь, я не имею никакого отношения к чужим знаниям и желанию учиться)
__
вам нужны организации у которых присутствуют все элементы в списке? По идее должно быть немного не так. Должны быть отсортированы организации по максимальному количеству элементов, так как например всех пяти или шести элементов может не быть ни в одной организации


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Sergeiqwe93  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 35
Пользователь №: 38863
На форуме: 11 лет, 3 месяца, 14 дней
Карма:




все это понятно. что касается бд, то уже читал одну. придется писать костыль. просто последнее решение было очень близко к моему. вот подумал может быть что то с этого выйдет... спасибо, что хоть что отвечаете... я серьезно, просто пишешь кучу вариантов задачи, и думаешь, что что-то не понятно... оно скорее что так и есть
скину чуть позже свой костыль, может быть, я здесь ни один такой буду

Это сообщение отредактировал Sergeiqwe93 - 5.04.2014 - 12:43
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 6466
Пользователь №: 35718
На форуме: 12 лет, 6 месяцев, 4 дня
Карма: 208




почему у вас в таблице No_barrier, есть и адрес организации и просто адрес?
___
уточняю, вам нужны адреса определённой организации по которым есть все элементы в фильтре?


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Sergeiqwe93  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 35
Пользователь №: 38863
На форуме: 11 лет, 3 месяца, 14 дней
Карма:




по одному адресу может находится несколько организаций и одна орг. может находится по неск адресам.
здесь нужна была связь многие ко многим
таблицы адрес и организации, свзязывает таблица организ_адрес
вот первая ид она оттуда и берется, а вторая это ид из таблицы адрес, он по сути в таблице no_barrer и не нужен...

Это сообщение отредактировал Sergeiqwe93 - 5.04.2014 - 13:06
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 6466
Пользователь №: 35718
На форуме: 12 лет, 6 месяцев, 4 дня
Карма: 208




Цитата
он по сути в таблице no_barrer и не нужен

ну я как бы об этом и говорил


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Sergeiqwe93  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 35
Пользователь №: 38863
На форуме: 11 лет, 3 месяца, 14 дней
Карма:




Цитата (Valick @ 5.04.2014 - 12:57)
уточняю, вам нужны адреса определённой организации по которым есть все элементы в фильтре?

да
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 23010
Пользователь №: 20039
На форуме: 15 лет, 5 месяцев, 16 дней
Карма: 623




Sergeiqwe93
Сделай с подзапросами, быстрее будет работать твоя задача.
Вот тебе костыль, который при определённых ситуациях работать не будет и очень нагружает систему. Я бы делал через подзапросы.
WHERE d.`id_elem` IN (1,2,3)
GROUP BY `id_elem`
HAVING COUNT(*) > 2



--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 6466
Пользователь №: 35718
На форуме: 12 лет, 6 месяцев, 4 дня
Карма: 208




SELECT a.*, oa.*
FROM
(SELECT id_organ_adres, COUNT(id_organ_adres) c
FROM No_barrier
WHERE id_elem IN (".implode(',',$_GET['id_element']).")
AND id_organ = ".(int)$_GET['id_organ']."
GROUP BY id_organ_adres
ORDER BY c) nb
LEFT JOIN organ_adres oa ON oa.id = nb.id_organ_adres
LEFT JOIN organization o ON oa.id_organ = o.id


--------------------
PMПисьмо на e-mail пользователю
    1   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Sergeiqwe93  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 35
Пользователь №: 38863
На форуме: 11 лет, 3 месяца, 14 дней
Карма:




Valick, inpost, большое вам спасибо
Вот рабочий вариант, касающийся моей задачи:

$a=$_REQUEST['sR'];
$query = "SELECT nameOrganization, gpsxAdres, gpsyAdres, nameStreet, houseAdres FROM (
(SELECT Organization.sh_name as nameOrganization, count(Organization.sh_name) as countElements,
Adres.gpsx as gpsxAdres, Adres.gpsy as gpsyAdres, Adres.house as houseAdres, Street.name as nameStreet
FROM Organization, Organ_Adres, Adres, No_barrier, Element, Street
WHERE Organ_Adres.id_organ = Organization.Id
AND Organ_Adres.id_adres = Adres.Id
AND No_barrier.id_organ_adres = Adres.Id
AND No_barrier.id_elem = Element.Id
AND Street.Id = Adres.id_street
AND Organization.id_subcat = "
.$a[0]." AND No_barrier.value = 1
AND No_barrier.id_elem IN (1,2,3) GROUP BY Organization.sh_name) AS result )
WHERE countElements = "
.(count($a)-1)." ORDER BY nameOrganization";

все это в коде выглядит немного иначе, но запрос такой же, ну No_barrier.id_elem IN (1,2,3) заполняю в цикле.
Может кому и пригодится...
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (2) 1 [2]  Ответ в темуСоздание новой темыСоздание опроса