|
SELECT * FROM table_name WHERE items = (УСЛОВИЕ)
|
|||
---|---|---|---|
#18+
Здравствуйте! Подскажите пожалуйста, у меня в базе хранятся данные в определенном формате, например id items desc 1 40:100 fish 2 20:30.5 temp Можно ли задать такой запрос, который бы мог определить, входит ли разыскиваемое число в диапазон? Т к items имеет формат 40< x < 100, 20< x < 30.5 Т е написать запрос типа SELECT * FROM table_name WHERE items = (УСЛОВИЕ), где условие = 40< x < 100, где х будет передаваться в запрос. Поле items имеет тип char(128). Пока у меня есть решение считывать все строчки и их в программе сортировать, но мне кажется в SQL можно как то обрабатывать данные на этапе выборки. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2014, 10:14 |
|
SELECT * FROM table_name WHERE items = (УСЛОВИЕ)
|
|||
---|---|---|---|
#18+
Dimo Zorg, Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2014, 10:30 |
|
SELECT * FROM table_name WHERE items = (УСЛОВИЕ)
|
|||
---|---|---|---|
#18+
Dimo Zorg, Код: sql 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2014, 15:05 |
|
SELECT * FROM table_name WHERE items = (УСЛОВИЕ)
|
|||
---|---|---|---|
#18+
VSVLAD, Спасибо Вам огромное! ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2014, 15:18 |
|
SELECT * FROM table_name WHERE items = (УСЛОВИЕ)
|
|||
---|---|---|---|
#18+
Dimo Zorg, А если задачу усложнить и ввести дополнительное правило, скажем этих диапазонов может быть несколько и нужно проверить их все. Можно как-то обрабатывать до признака конца строки, если такое в базе вообще имеется, например: Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
Скажем, х = 1000 и я должен вывести 1 строку. Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2014, 15:46 |
|
SELECT * FROM table_name WHERE items = (УСЛОВИЕ)
|
|||
---|---|---|---|
#18+
Dimo Zorg, Можно определить длину строки с помощью функции Length(). Если всё же планируется в таком виде размещать данные в базе, то в приложении (точно на: C++, .NET, PHP) можно написать пользовательскую функцию которая распарсит данные и зарегистрировать данную функцию как SQLite функцию и использовать в запросах. Можно и на голом SQL сделать, но будет больше кода и сложно его сопровождать ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2014, 16:18 |
|
SELECT * FROM table_name WHERE items = (УСЛОВИЕ)
|
|||
---|---|---|---|
#18+
VSVLAD, Еще раз спасибо Вам, понятно, в какую сторону смотреть! ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2014, 16:54 |
|
SELECT * FROM table_name WHERE items = (УСЛОВИЕ)
|
|||
---|---|---|---|
#18+
Dimo Zorg, Пока есть время свободное, да и вспомнить не помешает мне, пример на VB.NET с пользовательской функцией SQLite. Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2014, 17:04 |
|
SELECT * FROM table_name WHERE items = (УСЛОВИЕ)
|
|||
---|---|---|---|
#18+
VSVLAD, Спасибо Вам, очередной раз! Я решил задачу понятным мне способом, отсеял сам программно, только добрался до чтения документации и попробовать реализовать в SQLite. Но VB.NET мне незнаком, я все в Си делаю. Но Ваше решение мне нравится и кажется изящным. Попробую переварить =) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2014, 16:18 |
|
SELECT * FROM table_name WHERE items = (УСЛОВИЕ)
|
|||
---|---|---|---|
#18+
А в Си это все еще проще. Читать тут: http://sqlite.org/c3ref/create_function.html ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2014, 17:51 |
|
SELECT * FROM table_name WHERE items = (УСЛОВИЕ)
|
|||
---|---|---|---|
#18+
Dimo ZorgА если задачу усложнить ... Перед усложнением задачи неплохо бы было "прокачаться" в области теории баз данных. На данном этапе твоего развития очень не помешает почитать про нормальные формы, понять что это, зачем нужно, а главное - научится применять на практике полученные знания. Иначе так и будешь всю жизнь изобретать кривые велосипеды. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2014, 05:35 |
|
SELECT * FROM table_name WHERE items = (УСЛОВИЕ)
|
|||
---|---|---|---|
#18+
Добрый Э - Эх, давайте без философии и пафоса... ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2014, 10:57 |
|
SELECT * FROM table_name WHERE items = (УСЛОВИЕ)
|
|||
---|---|---|---|
#18+
Dimo Zorg, где ты увидел философию и пафос? это был совет от чистого сердца... с другой стороны, если тебе нравится суп есть вилкой и носить воду в дуршлаге, то это, конечно же, твое личное право. настаивать на ином не собираюсь ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2014, 11:25 |
|
SELECT * FROM table_name WHERE items = (УСЛОВИЕ)
|
|||
---|---|---|---|
#18+
White OwlА в Си это все еще проще. Читать тут: http://sqlite.org/c3ref/create_function.html Действительно элементарно! Спасибо!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2014, 15:21 |
|
|
start [/forum/topic.php?fid=54&msg=38658058&tid=2008783]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
46ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 155ms |
0 / 0 |