none
sql запрос RRS feed

  • Вопрос

  • В базе данных есть таблица там содержится производители например A, B, C и продукция которую они производят например phone, car, fridge. Нужно написать запрос чтобы виводились производители например phone которые не выпускают fridge.
    26 марта 2015 г. 7:45

Ответы

  • Если не выпускают fridge то логично написать: [type] != 'fridge'

    Только, если Вы написали до этого [type] = 'phone', то он и так не выберется, так что второе условие будет лишним.

    Запрос должен быть такой:

    SELECT [manufacturers] FROM [Product] WHERE [type] = 'phone'

    Итого выбираются все производители телефонов.

    Дополню.

    Как я понимаю, у автора в таблице может быть один производитель с несколькими тварами. Если он производит холодильник, то он не должен попасть в выборку. Тогда запрос станет таким:

    SELECT [manufacturers] FROM [Product] WHERE [type] = 'phone'
    EXCEPT
    SELECT [manufacturers] FROM [Product] WHERE [type] = 'fridge'




    • Изменено xjomanx 27 марта 2015 г. 7:47
    • Помечено в качестве ответа Owl2194 27 марта 2015 г. 20:33
    27 марта 2015 г. 7:09

Все ответы

  • not exists
    except
    outer join
    вам помогут


    Если вы хотите конкретики, то опишите структуру таблиц и формат желаемого ответа.

    26 марта 2015 г. 9:46
  • В базе данных есть таблица там содержится производители A, B, C, D, E, модель каждой продукции[model](уникальная для каждого) и продукция которую они производят[type] (phone, car, fridge). Нужно написать запрос чтобы виводились производители phone которые не выпускают fridge. SELECT [manufacturers] FROM [Product] WHERE [type] = 'phone' AND  [type] = 'fridge' не работает.
    27 марта 2015 г. 6:48
  • Если не выпускают fridge то логично написать: [type] != 'fridge'

    Только, если Вы написали до этого [type] = 'phone', то он и так не выберется, так что второе условие будет лишним.

    Запрос должен быть такой:

    SELECT [manufacturers] FROM [Product] WHERE [type] = 'phone'

    Итого выбираются все производители телефонов.

    Дополню.

    Как я понимаю, у автора в таблице может быть один производитель с несколькими тварами. Если он производит холодильник, то он не должен попасть в выборку. Тогда запрос станет таким:

    SELECT [manufacturers] FROM [Product] WHERE [type] = 'phone'
    EXCEPT
    SELECT [manufacturers] FROM [Product] WHERE [type] = 'fridge'




    • Изменено xjomanx 27 марта 2015 г. 7:47
    • Помечено в качестве ответа Owl2194 27 марта 2015 г. 20:33
    27 марта 2015 г. 7:09