[英]How to send HTML content to a MSSQL database field using XMLHttpRequest in Javascript & PHP?
[英]How to query a MSSQL database using a concatenated field
有没有人可以就解决我遇到的这个问题提供建议。 我正在使用 MSSQL 运行 PHP 5.3。 只是为了解释会发生什么以及我需要做什么......
用户从主页上的表格中选择特定的运行(行)。 表中的列是:
用户可以通过单击报告列中报告=是的单元格来 select 一行。 该数据发布到下一页。 下一页允许用户更改开始和结束英里/码数据,以便他们可以看到该运行的特定部分。
例如,用户已在主页上选择查看从开始英里/码 565.1211 到结束英里/码 593.4321 的数据。 用户可以通过在两个文本框中键入来更改他们想要查看的部分。 一个框是“开始英里/码”,第二个框是“结束英里/码”。 因此,用户可以在“开始英里/码”文本框 570.2345 和“结束英里/码”580.6543 中键入。 我想要发生的是从用户输入的地方查询数据......
SELECT id, CAST(mile AS varchar(6)) + '.' + CAST(yard AS varchar(6)) AS Mile, gps_lat, gps_long, rotten, split, broken, quality
FROM table
WHERE mile/yard BETWEEN start mile ??? AND end mile ???
ORDER BY Mile
我的问题是,当用户输入英里/码(580.6543)的组合时,我将如何从我的数据库中查询此信息? 我假设我将不得不再次将数据分成英里和码(我该怎么做)......还有如何检索信息? 只按英里搜索会很简单(例如 WHERE mile BETWEEN 570 AND 580),但我如何同时按码和英里搜索?
不幸的是,我将无法更改数据库结构,因为这是我必须使用的……如果有人能想到更好的方法来做我正在做的事情……我全神贯注!
我知道这是一个很长的问题,所以有任何不清楚的地方,请告诉我!
干杯,
尼尔
您不应该将这些英里/码数转换为 varchars。 您失去了将它们作为数字进行比较的能力,而这正是它们最初的用途。
将用户的英里/码值转换为数字,然后与数据库中的这些数字进行比较。
你试图强迫苹果和葡萄成为橙子,并将它们与梨和李子进行比较......只是让所有东西都成为菠萝,可以这么说。
此外,通过进行强制转换 + 连接,您将失去任何可能在这些字段上放置索引的机会。 如果您的表变得“大”,您将通过强制对每个查询进行全表扫描来降低性能。
正如 Marc B 所说,我试图强迫苹果和葡萄成为橙子,并将它们与梨和李子进行比较......只是让所有东西都变成菠萝,可以这么说。 我现在改变了我的脚本的结构。
干杯,
尼尔
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.