我们有一个包含-----------------------------------------
| id [int(11)] | card_no [varchar(16)] |
-----------------------------------------
| 1 | 0124578965874563 |
| 2 | 1245789658478596 |
| 3 | 8471452369587458 |
-----------------------------------------
信息的表格。包含如下数据:
1245_896584_8596
现在我们需要一个查询来查找第6个位置中包含 7 的卡号。或者在第二位置包含 4 。
当我们打印卡号并发现一些数字不可读时,实际上需要这样做。所以我们需要用剩下的数字来识别卡片。例如,我们有以下数据:
fork()
现在我们需要用这些数据识别卡片。 提前谢谢。
答案 0 :(得分:1)
您可以使用函数SUBSTRING
:
SELECT id, card_no
FROM mytable
WHERE SUBSTRING(card_no, 6, 1) = '7' OR SUBSTRING(card_no, 2, 1) = '4'
答案 1 :(得分:1)
使用SUBSTR
字符串函数
SELECT *
FROM yourtable
WHERE SUBSTR(card_no,2,1) = 4
OR SUBSTR(card_no,6,1) = 7
答案 2 :(得分:0)
在where子句和通配符中使用like恰好一个符号_ 像
这样的东西select * from table where card_no like '_____7℅'