С Новым годом! Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
-2 / 4 / 1
Регистрация: 06.01.2014
Сообщений: 462
1

SQL запрос поиск разных значений идет в одном и том же поле

07.05.2016, 19:08. Показов 1674. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Задача такая. Есть некая таблица. Нужно создать такой запрос, что бы два значения отыскать в одном поле. А потом по этим двум значениям в следующим поле вывести в переменных два значения массовой концентрации, и в следующем поле в другие переменные вывести так же плотности по двум значениям.

SQL
1
2
3
4
THEN BEGIN
    qrVolume.SQL.Text := 'select * from ALCO where '+
     'OB between '+ FloatToStr(v )+ ' and ' + FloatToStr(v + 7)+ ' or '+
     'OB between '+ FloatToStr(d )+ ' and ' + FloatToStr(d + 7);
запрос работает вроде но данные не точны..если сравнивать с таблицей.

Delphi
1
2
3
 qrVolume.Open;
     if not qrVolume.Eof then begin 
    Ob_k1:= qrVolume['MA'];
далее в поле МА (масса) по найденному значению выуживает массу.
Ob_k2:= qrVolume['MA'];
Вообще возможно ли отыскать два значения в одном поле?
Миниатюры
SQL запрос  поиск разных значений идет в одном и том же поле  
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.05.2016, 19:08
Ответы с готовыми решениями:

SQL запрос: в первом поле идет число, с которого начинается пропуск; во втором - количество пропущенных чисел
Доброго времени суток. Столкнулся с проблемой, связанной с SQL запросом. Запрос сл. вида: имеется...

Отображение разных опций в одном и том же окне
Здравствуйте. Подскажите, пожалуйста, следующее программное решение. Есть основная форма с...

SQL- запрос. Поиск одинаковых значений полей в таблицах
Добрый день! Есть 3 таблицы: 1.проданные товары, 2.продавец, 3.покупатель: Продавцы....

Создание поля с множесством значееений в одном поле т.е. преобразование столбца или строки с множеством значений в одном
Добрый день господа программисты. дернул меня черт создать базу данных в Access до сегодняшнего...

6
-2 / 4 / 1
Регистрация: 06.01.2014
Сообщений: 462
07.05.2016, 19:18  [ТС] 2
Есть значения. Объемная концентрация спирта: 70 и 69%. По таблице это 70,5 и 69. Нужно что бы запрос учитывал это. Далее 70,5------>массовая концентрация 44, плотность 0,8856. И 69------> массовая концентрация 13, плотность 0,8838. Все эти данные нужно найти.
0
5580 / 4430 / 1080
Регистрация: 29.08.2013
Сообщений: 27,712
Записей в блоге: 3
07.05.2016, 19:21 3
SQL
1
2
3
SELECT * FROM T WHERE SPIRT=70 AND MASS=44
UNION ALL
SELECT * FROM T WHERE SPIRT=69 AND MASS=13
0
-2 / 4 / 1
Регистрация: 06.01.2014
Сообщений: 462
07.05.2016, 19:28  [ТС] 4
Цитата Сообщение от qwertehok Посмотреть сообщение
SQL
1
2
3
SELECT * FROM T WHERE SPIRT=70 AND MASS=44
UNION ALL
SELECT * FROM T WHERE SPIRT=69 AND MASS=13
но 70 и 69 это пример. Есть два Edit в них вносятся любые цифры. Масса же находится автоматом и вносится в переменную от этих двух цифр, которые вбиваются в Едит.
0
5580 / 4430 / 1080
Регистрация: 29.08.2013
Сообщений: 27,712
Записей в блоге: 3
07.05.2016, 19:47 5
Лучший ответ Сообщение было отмечено xxx_73 как решение

Решение

я могу ответить на вопрос
но если вопроса нет, то я не знаю на что мне отвечать

в чем у вас проблема?
получить данные из эдита в запрос?

вот пример 1
Delphi
1
query.sql.text:='select  * from T where SPIRT='+Edit1.Text+' or SPIRT='+Edit2.Text;
вот пример 2
Delphi
1
2
3
query.sql.text:='select  * from T where SPIRT=:sp1 or SPIRT=:sp2';
query.parameters.parambyname[':sp1'].value:=edit1.text;
query.parameters.parambyname[':sp2'].value:=edit2.text;
как 3 посоветую написать процедуру и делать так
Delphi
1
2
3
query.sql.text:='select  * from my_procedure(:sp1,:sp2)';
query.parameters.parambyname[':sp1'].value:=edit1.text;
query.parameters.parambyname[':sp2'].value:=edit2.text;
а уже в самой процедуре отбираете все что вам нужно
0
-2 / 4 / 1
Регистрация: 06.01.2014
Сообщений: 462
07.05.2016, 20:58  [ТС] 6
Ответ нашел сам.
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 if StrToInt(Edit5.Text, V1) then begin
    qrVolume.SQL.Text := 'select * from ALCO where '+
           'OB between '+ IntToStr(v + 7)+' and '+ IntToStr(v - 7);
    qrVolume.Open;
    if not qrVolume.Eof then begin //здесь получаешь нужные значения
      Ob_k1 := qrVolume['MA'];     //массу
      Ma_k1 := qrVolume['...'];    //и выбираешь плотность
    end;
    qrVolume.Close;
  end;
 if StrToInt(Edit5.Text, V2) then begin
    qrVolume.SQL.Text := 'select * from ALCO where '+
           'OB between '+ IntToStr(v + 7)+' and '+ IntToStr(v - 7);
    qrVolume.Open;
    if not qrVolume.Eof then begin //здесь получаешь нужные значения
      Ob_k2 := qrVolume['MA'];     //массу
      Ma_k2 := qrVolume['...'];    //и выбираешь плотность
    end;
    qrVolume.Close;
  end;
0
5580 / 4430 / 1080
Регистрация: 29.08.2013
Сообщений: 27,712
Записей в блоге: 3
07.05.2016, 21:07 7
я же вам показал - это можно через UNION сделать одним запросом

единственное - если у вас вернется не одна строка, а несколько. ошибки то в дельфи не будет, но это вроде как не обрабатывается у вас
1
07.05.2016, 21:07
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.05.2016, 21:07
Помогаю со студенческими работами здесь

SQL-запрос на поиск одинаковых значений полей в одной таблице?
Как найти записи в которых значения некоторых полей одинаково? Например поля с ФИО.

Замедленное появление/исчезание трёх разных текстов на одном и том же месте
Это моя первая тема как новичка. Поскольку в интернете не нашёл прямого ответа на такой вопрос,...

Как сделать так, чтобы на одном и том же сайте у разных аккаунтов были разные ip?
Снова я, прошу извинить, ибо я не знала куда свой вопрос впихнуть, cо своими вопросами. Как сделать...

Запрос на разницу значений при отсутствии нескольких показателей в одном из значений
Добрый вечер! Прошу прощения за возможно глупый вопрос, но для меня это действительно проблема(...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Блоги программистов
Как перейти с Options API на Composition API в Vue.js
BasicMan 06.01.2025
Почему переход на Composition API актуален В мире современной веб-разработки фреймворк Vue. js продолжает эволюционировать, предлагая разработчикам все более совершенные инструменты для создания. . .
Архитектура современных процессоров
inter-admin 06.01.2025
Процессор (центральный процессор, ЦП) является основным вычислительным устройством компьютера, которое выполняет обработку данных и управляет работой всех остальных компонентов системы. Архитектура. . .
История создания реляционной модели баз данных, правила Кодда
Programming 06.01.2025
Предпосылки создания реляционной модели В конце 1960-х годов компьютерная индустрия столкнулась с серьезными проблемами в области управления данными. Существовавшие на тот момент модели данных -. . .
Полезные поделки на Arduino, которые можно сделать самому
raxper 06.01.2025
Arduino как платформа для творчества Arduino представляет собой удивительную платформу для технического творчества, которая открывает безграничные возможности для создания уникальных проектов. Эта. . .
Подборка решений задач на Python
IT_Exp 06.01.2025
Целью данной подборки является предоставление возможности ознакомиться с различными задачами и их решениями на Python, что может быть полезно как для начинающих, так и для опытных программистов. . . .
С чего начать программировать микроконтроллер­­ы
raxper 06.01.2025
Введение в мир микроконтроллеров Микроконтроллеры стали неотъемлемой частью современного мира, окружая нас повсюду: от простых бытовых приборов до сложных промышленных систем. Эти маленькие. . .
Из чего собрать игровой компьютер
inter-admin 06.01.2025
Сборка игрового компьютера требует особого внимания к выбору комплектующих и их совместимости. Правильно собранный игровой ПК не только обеспечивает комфортный геймплей в современных играх, но и. . .
Обновление сайта www.historian.b­y
Reglage 05.01.2025
Обещал подвести итоги 2024 года для сайта. Однако начну с того, что изменилось за неделю. Добавил краткий урок по последовательности действий при анализе вредоносных файлов и значительно улучшил урок. . .
Как использовать GraphQL в C# с HotChocolate
Programming 05.01.2025
GraphQL — это современный подход к разработке API, который позволяет клиентам запрашивать только те данные, которые им необходимы. Это делает взаимодействие с API более гибким и эффективным по. . .
Модель полного двоичного сумматора с помощью логических операций (python)
AlexSky-coder 04.01.2025
def binSum(x:list, y:list): s=^y] p=x and y for i in range(1,len(x)): s. append((x^y)^p) p=(x and y)or(p and (x or y)) return s x=list() y=list()
Это мы не проходили, это нам не задавали...(аси­­­­­­­­­­­­­­хро­н­н­ы­й счётчик с управляющим сигналом задержки).
Hrethgir 04.01.2025
Асинхронный счётчик на сумматорах (шестиразрядный по числу диодов на плате, но наверное разрядов будет больше - восемь или шестнадцать, а диоды на старшие), так как триггеры прошли тестирование и. . .
Руководство по созданию бота для Телеграм на Python
IT_Exp 04.01.2025
Боты для Телеграм представляют собой автоматизированные программы, которые выполняют различные задачи, взаимодействуя с пользователями через интерфейс мессенджера. В данной статье мы рассмотрим,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru