Две таблицы, и одно общее поле

Discussion in 'PHP' started by n3m0, 19 Aug 2007.

  1. n3m0

    n3m0 Elder - Старейшина

    Joined:
    11 May 2007
    Messages:
    133
    Likes Received:
    92
    Reputations:
    11
    Добрый вечер!
    Мне нужна помощь по использованию баз даных и PHP
    Допустим у меня одно поле в таблице news должно совпадать с полем в другой таблице cat . Как организовать выборку. Т.е поле name в таблице cat совпадает полю cat в таблице news. Как сделать ету совместимость, и как делать выборку?
    Можна пример на пхп. cat должно помещатся в поле селект

    Может чтото непонятно, сильно не бейте ))
    Поиском ничего не нашел
     
  2. scrat

    scrat кодер

    Joined:
    8 Apr 2007
    Messages:
    625
    Likes Received:
    541
    Reputations:
    3
    Code:
    select * from cat where cat.name=news.name and cat.name="ТО ЧТО ТЕБЕ НАДО"
    upd:
    на php
    PHP:
    $result=array();
    $q=mysql_query("запрос,преведённый выше");
    for(
    $i=0;$i<mysql_count_rows($q);$i++) mysql_fetch_array($result);
     
    #2 scrat, 19 Aug 2007
    Last edited: 19 Aug 2007
    2 people like this.
  3. GreenBear

    GreenBear наркоман с медалью

    Joined:
    7 May 2005
    Messages:
    2,548
    Likes Received:
    1,397
    Reputations:
    612
    http://sql.ru/docs/mysql/rus%5Fref/sql.shtml#Select
     
  4. The_HuliGun

    The_HuliGun Elder - Старейшина

    Joined:
    19 May 2007
    Messages:
    191
    Likes Received:
    84
    Reputations:
    11
    Используй соедининие таблиц по полю,
    Code:
    SELECT *
    FROM cat JOIN news USING name;
    
     
    2 people like this.
  5. n3m0

    n3m0 Elder - Старейшина

    Joined:
    11 May 2007
    Messages:
    133
    Likes Received:
    92
    Reputations:
    11
    Все, всем спасибо! Помогли!
     
  6. groundhog

    groundhog Elder - Старейшина

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    n3m0, кстати, ситуация которая у тебя возникла - это ошибка проектирования структуры базы данных... По хорошему, если ты знаком с понятиями "нормальная форма" и "нормализация" в терминах баз данных - такой ситуации никогда бы не возникло...
     
  7. n3m0

    n3m0 Elder - Старейшина

    Joined:
    11 May 2007
    Messages:
    133
    Likes Received:
    92
    Reputations:
    11
    ну да, я ж новичек в базах даных. Я только учусь
    Вот такой вопрос. Мне нужно организовать добавление новости, и для каждой новости чтоб можна было выбирать категорию.
     
  8. GreenBear

    GreenBear наркоман с медалью

    Joined:
    7 May 2005
    Messages:
    2,548
    Likes Received:
    1,397
    Reputations:
    612
    для этого не нужно использовать сложные запросы.
     
  9. groundhog

    groundhog Elder - Старейшина

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    Не понятно... В чём проблема? Добавление это Insert, данные для него формируешь посредством форм...
     
    1 person likes this.
  10. n3m0

    n3m0 Elder - Старейшина

    Joined:
    11 May 2007
    Messages:
    133
    Likes Received:
    92
    Reputations:
    11
    так всё уже сделано, просто ты начал говорить про такое, как "нормальная форма" и "нормализация" ,и я решил выложить суть всей проблемы. На простых запросах я уже сделал. Работает. \
    Ещё раз Спасибо!
     
  11. n3m0

    n3m0 Elder - Старейшина

    Joined:
    11 May 2007
    Messages:
    133
    Likes Received:
    92
    Reputations:
    11
    И снова проблема. Почемуто категорию нехочет выбирать
    Можете конкретно на моем примере показать
    База news
    id | cat | text |
    1 | news | bla |
    2 | files | bla2 |
    3 |articles| bla3 |
    ....| ...... | bla4 |

    База cat
    id | name | text |
    1 | news | Новости |
    2 | files | Файлы |
    3 |articles| Статьи |
    ....| ...... | ........... |

    Покажите пример, как организовать выборку и добавление, если news.cat=cat.name
    А то у меня никак не получатеся

    ЗАРАНИЕ БЛАГОДАРЕН