Php 这种情况下如何进行mysql查询?
我有一个mysql数据库表,其结构是:Php 这种情况下如何进行mysql查询?,php,mysql,Php,Mysql,我有一个mysql数据库表,其结构是: startphoneNum | endphoneNum | department 022589893232011 | 022589893232021 | sales 022589893232027 | 022589893232029 | Human Resources 022589893232041 | 022589893232048 | after sales 电话号码由三部分
startphoneNum | endphoneNum | department
022589893232011 | 022589893232021 | sales
022589893232027 | 022589893232029 | Human Resources
022589893232041 | 022589893232048 | after sales
电话号码由三部分组成:022(城市代码)-589893232(公司号码)-011(分机号码)
我可以使用php explode,从格式022-589893232-011
到022589893232011
生成一个电话号码,然后如何通过mysql查询
输入电话号码
以获得部门名称
例如:
如果我输入电话号码0225898939323043
,它属于售后服务
,
但是如何在代码中进行
php-mysql查询
?得到我需要的结果?谢谢 使用如下中间查询:
SELECT department FROM table WHERE '022589893232043' BETWEEN startphoneNum AND endphoneNum;
从[table]中选择部门,其中[phone number]>startphonenum和[phonenumber]
将[]替换为实际值…尝试以下查询:
SELECT department
FROM table1
WHERE startphoneNum >= PHP_VARIABLE AND endphoneNum <= PHP_VARIABLE
选择部门
来自表1
其中startphoneNum>=PHP_变量和endphoneNum查看运算符:
$query = "SELECT department
FROM myTable
WHERE '$phoneNbr' BETWEEN startphoneNum AND endphoneNum;";
试试这个:
SELECT department FROM your_table
WHERE LEFT(your_num, 12) = LEFT(startphoneNum, 12)
AND CONVERT(RIGHT(your_num, 3), UNSIGNED) BETWEEN
CONVERT(RIGHT(startphoneNum, 3), UNSIGNED) AND
CONVERT(RIGHT(endphoneNum, 3), UNSIGNED)
从department dp、phonenumber表pn中选择dp.department\u name,其中pn.startphonenum>'values'和pn.endphonenum<'values是否已尝试查询?如果是,请粘贴在这里。
SELECT department FROM your_table
WHERE LEFT(your_num, 12) = LEFT(startphoneNum, 12)
AND CONVERT(RIGHT(your_num, 3), UNSIGNED) BETWEEN
CONVERT(RIGHT(startphoneNum, 3), UNSIGNED) AND
CONVERT(RIGHT(endphoneNum, 3), UNSIGNED)